第 5 周总结
1.什么是缓存Cache?
缓存:存储在计算机上的一个原始数据复制集,以便于访问-维基百科
缓存是介于数据访问者和数据源之间的一种高速存储,当数据需要多次读取的时候,用于加快读取的速度。
缓存(Cache)和缓冲(Buffer)的分别?
缓存只用于读取,
缓冲用于读取和写入,主要来解决内存和磁盘读写速度不一致的问题
无处不在的缓存:当考虑读数据多次读取的时候,就考虑是否使用缓存。
cpu缓存
操作系统花村
数据库缓存
JVM编译缓存
CDN缓存
代理与反向代理缓存
前端缓存
应用程序缓存
分布式对象缓存
存储的数据结构和如何存储
一般来说缓冲都是放在内存空间的,一般采用hash表(散列算法)。
缓存的关键指标
缓存命中率
缓存是否有效依赖于能多少次重用同一个缓存相应业务请求,这个度量指标被称做缓存命中率。
如果查询一个缓存,十次查询九次能够得到正确结果,那么它的命中率是90%
缓存命中率的指标
缓存键集合大小,健集合越大命中率越低
缓存可使用内存空间,可用空间越小,命中率越低
换对象生存时间,生存时间越短,命中率越低
缓存种类
代理缓存:代理用户上网
反向代理缓存:代理服务中心
多层反向代理缓存
内容分发网络(CDN):前端,放在供应商的数据中心
旁路缓存
浏览器对象缓存
本地对象缓存
技术栈各个层次的缓存
消息队列和异步
评论