《分布式缓存》读书笔记一

系统性能为王,用户体验为王,因为缓存可以让用户更快的接触到资源,所以缓存在现代web框架中就显得非常重要

边缘缓存,主要提供静态内容,以减少应用服务器的介入

LFU算法,替换访问次数最少的缓存,但是如果有一个先前流行的缓存对象,则可能会造成”缓存污染“

A MRU algorithm is good in situations in which the older an item is, the more likely it is to be accessed

HTTP1.0提供了一些基本的缓存特性,比如在服务器端设置expires的HTTP头来告诉客户端在重新请求文件之前缓存多久是安全的,可以通过 if-modified-since的条件来使用缓存。如果文件没有改变,服务器可以使用304-Not Modified 来应答。客户端收到304就可以使用缓存了

HTTP1.1引入了实体标签e-tag,它是文件或对象的唯一标识,在配置了last-modified/Etag的情况下,浏览器访问URI资源时,会发送请求询问文件是否已经修改,如果没有修改,服务器只会返回304,浏览器直接对其本地缓存

《分布式缓存》读书笔记一

cache-control/expires的优先级要高于 last-modified/etag,既当本地副本数据发现cache-control/expires还在有效期时,不会去请求数据库

Query cache 作用于整个MySQL实例,主要用于缓存MySQL中的resultSet,也就是一条sql执行的结果集,所以仅仅支队select语句有效。

相关推荐