三个最常用的缓存插件比较
作者:vision 发布时间:April 29, 2009 分类:wordpress
经历了由Hyper Cache换到cos-html-cache再换到WP Super Cache又换回Hyper Cache
对这三个最最常用几乎每一个wordpress都必备其中一个的缓存插件也有点小看法....
一个插件用长了,总感觉它不是特别好,所以就想换掉Hyper Cache....
总的来说:
1. Hyper Cache属于傻瓜式,设置和使用都较为简单,在非登录状态下访问页面会产生序列化后的二进制数据,当有访问请求时,Hyper Cache 首先会检查是否生成了缓存.
2.cos-html-cache属于脑残型,设置非常简单但需要固定链接设置为.html的形式,功能也直白,在任何触发到页面的时候就把当前页面完完整整的保存成一个真html文件存到设置固定链接的那个目录下,利用html优先访问的原则,访问式直接调用html...彻底绕过wordpress,到达了几乎SQL查询为0的状态...但好像对浏览器,爬虫,采集,不加区分,甚至我的一个插件需要缓存的时候遍历了一边所有文章,都把所有的文章生成了一遍...
3.WP Super Cache也是生成html,它更为智能,可选项更多,但我认为它过于聪明,以至于它重建缓存的频率要高于其他两个插件,所以名博和高手们用这个的更懂,我则不觉得像我们这样的小博有什么好处...
我来说几句:
首先说cos-html-cache.最直接,你本来的页面出来之后是什么样的,它就完全copy一个完全一样的html保存起来,却也最有效,完全绕过了wordpress,我个人感觉最适合国外的主机使用...你可以在作者江东的blog找到你想找的信息..
要使用这款插件首先要确保你本身生成的页面没有任何错误,不能打开gzip压缩... 其实用这个插件的条件还是相当苛刻的,尤其是你网站动态的东西多的时候,很容易出错.
其次使用国外的一部分模板可能出现乱码问题,这是因为国外一部分模板在header.php中的meta头有如下写法...(或其他非UTF-8的编码格式)
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
按照这样生成出来的html浏览器在解析的时候会按照编码ISO-8859-1来解析,所以产生乱码..
解决的办法: 1.把header.php的meta头设置为 charset=UTF-8 2.htaccess头部加入一行AddDefaultCharset UTF-8 来强制让浏览器确定UTF-8编码格式 3.把主题中所有文件用UTF-8编码格式保存(虽然这样做很正确,但我认为是不必要和繁琐的) 你可以阅读这里加深对字符集编码的理解
在来说Hyper Cache.最傻瓜,设置很简单,并且支持gzip,你可以参考北极冰仔关于Hyper Cache的评价... 不仅设置简单,而且对动态,脚本,其他插件支持很好,基本兼容所有的插件,比如我现在在用的我觉得很有用的一个插件:PHP Speedy(WP Super Cache并不能和这个插件共存,不过貌似解决的办法也是有的)... 算是三个插件中出问题概率最小的... Hyper Cache和cos-html-cache共同的一个问题就是回头客cookie验证的问题,当然解决的办法也是有的..
最后说WP Super Cache.关于这个你可以参考雪山飞猪关于这个插件的评价...很专业,官方开发,很强大,很.....略去N多优点... 但我确觉得..不好用! 弄不懂它重建缓存的规则,并且回收时间太短...绝对不推荐无名小blog用,你会发现每次访问你的网页都会折腾一次CPU给你生成个缓存出来,让你看... 有人说"Hyper Cache 轻松打败 WP Super Cache” 北极冰仔牛用事实给了我们解释...
结论: 国外主机绝对推荐cos-html-cache完全静态化的优势很明显,国内主机则可考虑用Hyper Cache,大牛们都是混合用,哪好用哪加自己改造...
如果你还想更加优化你的wordpress.. 当然这需要你的主机做支持..
我推荐这几篇关于对象缓存和内容缓存的文章:
内存级Wordpress缓存–Super Cache Plus
WordPress 内存缓存终极加速插件:Batcache
WordPress 缓存插件
使用 PostMeta 提速 WordPress 插件
使用 WordPress 对象缓存
已有 3 条评论 »
从blogsearch搜到了这篇文章,真的很不错,希望能看到更多的新内容,已经订阅了rssfeed,祝博主好运:)
我用了WP Super Cache,但是小工具都不见了,貌似是跟其他插件起冲突,怎么解决呢
其实我不太清楚super cache... 推荐用hyper cache... 如果你是用vps 那么强烈推荐Memcache... 超过所有缓存插件...