关于静态页面缓存的几点总结

1.列表页原子操作问题

我们使用的nginx proxy cache,每次只能purge(过期)一个页面。
发现页,热门,如果不同时purge,会出现新老交替的瞬间。没有主动过期概率更高。

阅读nginx proxy cache代码,知道hash规则,删除文件。可以用nginx插件实现。


2.缓存什么
像大量的用户,专辑页,如果都缓存代价很高,是否只缓存首页。只缓存第一页。

3.缓存过期问题
被动过期:缓存时间到了后,会获取新的数据。对于未登录比较适合。
主动过期:发生修改后,主动通知页面缓存清理。
用户的声音,专辑列表,专辑的声音列表,发现页列表
用户:用户修改了自己的属性,发了新声音,新专辑。
专辑:用户修改了专辑,发了新声音

4.谁看缓存
用户在看自己页面的时候不用缓存
用户在看其他人页面的时候用缓存

5.缓存的版本
客户端有多个版本,不同版本可能返回的数据结构不一样。版本体现在URL上。

6.公共参数
每个客户端都不同值得:uid token device_id等,不要放到url里,现在是修改放在cookie里。
device scale等公共参数还放到url中。

猜你喜欢

转载自ldd600.iteye.com/blog/1983005