发表于: 2017-08-31 12:02:30
1 940
【今日完成】
昨天跑了一天没跑通,今天早上找博韬师兄要了一份他的工程代码。
经过仔细对比我发现,我有一个地方的IP地址写错了,真的是想死的心都有了,怪不得跑不通。
图为测试结果,主要测试了Memcached的put和get方法,循环打印,可以发现每次都拿到了正确的Key-Value。
至此Memcached的JAVA客户端测试终于成功!
===================================================================
下午把老大关于缓存的两个视频撸了一遍。
笔记如下:
首先是从数据库说起,其实数据库是非常脆弱的,主流的Mysql与Oracle数据库,能承受的并发数也不过几百或上千,远远无法满足需要。当表的复杂性增加,或者查询语句的复杂性增加时,能承受的并发数会更低。当然这极低的并发承载数已经是数据库自身优化过的结果了(比如数据库内部就有缓存机制),所以单从数据库来说,已经没有提升并发数的潜力了。
数据库中还有索引的概念,什么是索引呢?其实就是一张表,只不过里面包含了Key与Value,非常便于查询。如果没有索引,数据库查询一行的时候,只能遍历整个数据库,试想如果里面有上亿条数据,是相当麻烦的。而有了索引,则直接在索引表中查询,然后根据索引表定位数据库中的位置,很方便。索引本质是建表,所以要在关键的字段建立索引,建立索引有几个原则:
1、字段重复率低
2、该索引经常被使用
3、索引列不参加计算
这时候为了解决问题,就有了缓存的概念,即用内存来构筑一块盾牌,让平时的访问都先到达缓存中,若是缓存中有数据,就不用再访问数据库了,若是缓存中没有,再访问数据库。这样把经常使用的放在缓存中,极大的降低了对数据库的访问次数。
如图所示,缓存如一块盾牌一样挡在了中间。
【明日计划】
把Memcached加入service中,进行测试
【今日收获】
跑通了Memcached的JAVA客户端测试类,
看完了关于缓存的视频,对缓存的作用与概念有了新的认识。
【任务进度】
应该没有延期风险
http://task.ptteng.com/zentao/project-burn-268.html
评论