Loading...

新的wordpress缓存思想

2009-04-04 22:17:05 发表于Wordpress, 网站技术 本文链接: 新的wordpress缓存思想

以前的一篇日志中,cosbeta认为,凡是插件级(cos-html-cache除外)的缓存都不会有多大的效果,毕竟他们都无法绕过wordpress的预处理。不相信的话,可以做一个实验,在一个页面已经缓存的情况下,修改wp-config.php文件,故意将数据路的信息修改成错误的信息,然后刷新缓存的页面,若该页面依然正常,那么此缓存则效率很高,否则,缓存效果并不明显。

所以,今天晚上cosbeta想到一种新的思路,那就是对wordpress做外部缓存。

配合cos-html-cache使用,此外部缓存仅仅缓存非post页面,缓存的方式如下(仅仅针对非single post页面):

  1. 检查页面html中是否有cos-html-cache的缓存flag”<!–cos-html-cache-safe-tag—>”,有则将缓冲区文件写入缓存,否则利用cos-html-cache缓存;
  2. 访问wordpress的时候,检查缓存是否存在或者过期(不会通过插件机制检查,因此若缓存被引用,即使数据库关闭,页面依然正常),若过期则写入新的缓存,否则,直接调用缓存文件;

这样便可实现wordpress的全站缓存,这样的缓存有什么作用,下面我做一个计算:

假设blog的访问量是1w+,非静态化文件访问是1000;

未缓存:按照wordpress的数据库使用情况看来,一天数据库查询绝不少于30000次;

使用缓存:(假设缓存时间为5分钟):一天数据库查询的次数则为 24*60/5 = 288次;

由于single post依然采用cos-html-cache,因此对于评论之类的实时显示毫无影响。

今晚找可能吧和我自己的blog做小白鼠,测试一下。

本站html之外的文件也都缓存,欢迎大家查看(不是.html结尾的页面)源代码,代码最后一行会显示缓存生成的时间。

补充说明:这个插件其实没有那么高深,要不是CPH出错报告关闭了的话,10分钟便可搞定(多亏PEAR)。关键是测试,看看有没有想想不周到的地方。

标签:,
发表于 2009-04-04 22:17:05 目录:Wordpress, 网站技术 [RSS 2.0] 你可以发表评论, 或者从您的网站 trackback
已经有14位大师动手指导 拒绝低俗
评论分页: 1
(Required)
(Required, not published)
如果留言未显示无需重复留言,我将为你恢复!