抽空写了个缓存头像的插件 – cache avatar
可以把讨论头像缓存到本地服务器. 随着博客越来越多 gravatar 的站点压力越来越大. 偶尔有头像下载缓慢的情况. 尤其在评论很多的情况下评论者头像往往是最后才载入完成. 因此对站点速度有点苛刻的朋友需要缓存一下评论头像.
插件后台可设置缓存时间.
抽空写了个缓存头像的插件 – cache avatar
可以把讨论头像缓存到本地服务器. 随着博客越来越多 gravatar 的站点压力越来越大. 偶尔有头像下载缓慢的情况. 尤其在评论很多的情况下评论者头像往往是最后才载入完成. 因此对站点速度有点苛刻的朋友需要缓存一下评论头像.
插件后台可设置缓存时间.
我在博客上用了很多的 javascript 代码, 来实现些简单的动画效果和 Ajax . 本意是为了好看, 增强用户体验但是也不得不有所牺牲: 1. 可能会增加数据库请求. 2. 无法使用浏览器前进后退按钮.
今天写个思路来缓解一下第一个问题 ( 数据库请求 ) 注意只是缓解. 因为不是真正的缓存.
我们知道所以的 Ajax 请求其实和不同的请求是没有什么两样的. 但它也有自己的特点:
Ajax 只是可能增加数据库请求, 并不是绝对会增加数据库请求. 这个要具体情况具体分析. 像我目前使用的这种分页方法就没有增加反而是减少请求.
我的思路是将请求返回的数据在展示的同时也放到一个数组变量里, 在下次请求的时候直接从这个缓存变量中取值. 因此, 这时 Ajax 的请求顺序变为: 先判断缓存如果有需要的数据则返回缓存数据, 没有则执行 Ajax 请求, 并在请求成功后缓存返回数据.
以 Ajax 分页 举例: