一、概述
缓存(cache)无处不在,计算机要是少了缓存,那基本也就谈不上性能。为什么需要缓存,最主要还是把计算的结果(也包括直接结果)缓存起来,提高响应速度,减少后端的压力一般缓存的位置有离客户更近的原则,也有设备速度的原则。我们针对缓存一般需要考虑以下几点:
1、缓存的命中率。2、缓存的更新策略。当然一般是:LRU了。3、自动过期的时间。4、缓存是否需要扩容。
...
二、浏览器到服务器一序列缓存
下面我们看下从浏览器到服务器的一序列的缓存。下图是一个物理图,基本也按照大体的逻辑来画的。
一般缓存的顺序是:
浏览器端的缓存--->cdn--->反向代理的缓存-->web服务器的(动态语言中间代码缓存)-->应用级别缓存(可以用集成式的memcached缓存)-->数据库连接池-->数据库级别的缓存。
接下的几个章节中,会详情探讨每个缓存的具体事项。