虽然把 米扑博客 优化到了YSlow 已是 Grade A ,可还是没达到无欲无求的境界,但看到了有更好的优化方法,我就控制不住手痒痒,再一次把 WordPress 优化了。没有最快,只有更快,我那强烈地Wordpress瘦身欲几乎已经是一种癫狂的病态了。

这次优化的方法是用 WordPress Object Cache 缓存页面,我以前用过缓存插件,但是发现效果绝对远没有此方法显著。而且我在最新的 WordPress 2.8 下完美地实现了这一缓存效果,所以强烈推荐。

WordPress Object Cache 可以将一个耗时查询或者运算结果存储到一个缓存文件,这样就可以让我们不用老是重复到数据库中获取不变的数据,以缩短用户查看页面的速度。那么,我们如何开启它呢?

1、PHP 需要安装上 Memcached 扩展

是否安装了 Memcached 扩展请咨询服务器管理员,至少我的主机已经安装上了 Memcached 扩展。

2、编辑 wp-config.php 文件,添加如下代码:

// Enable the WordPress Object Cache:

define('ENABLE_CACHE', true);

3、新建 /wp-content/cache 目录,设置权限 777。

4、点此下载 object-cache.php 文件,解压后上传至 /wp-content 目录。

在启用 object cache 之前,我首页的数据库查询次数在60次左右,现在只有20多次,足足压缩了三分之二,不只加速了 WordPress,而且减轻了数据库的负载,效果相当明显。

--------------------------

WP Super cache启用Memcached内存缓存加速

根据资料显示,Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。

简单地说Memcached是一种将缓存放在主机或者服务器的内存当中,这比生成静态文件缓存从硬盘中读取的速度要快多了,尤其是PHP等动态网站,利用Memcached的内存缓存可以极大地减少MysqL查询,从而达到加速的目的。

WordPress加速的三款插件:Hyper Cache、W3 Total Cache、Wp Super Cache都各有各的优缺点,部落当前用的是WP Super cache插件,WP Super cache主要是通过将每一个页面生成静态文件,当用户第二次访问时直接读写该文件即可。

前几天有看到 ouyangfeng.com.cn 博主留言提到了内存缓存插件Batcache,才注意到其实WP Super cache也支持Memcached,只是还是在测试当中,默认是不显示的,我们需要自己手动上传一个object-cache.php到wp-content就可以开启了。

对WordPress加速有需要的朋友可以参考一下:

1、精简型:WordPress缓存插件Hyper Cache使用方法与缓存加速效果对比分析

2、全能型:WordPress缓存插件W3 Total Cache安装设置方法和缓存加速效果对比

3、经典型:WordPress加速缓存插件WP Super cache安装方法及使用技巧

WP Super cache启用Memcached内存缓存加速及其效果分析

一、安装Memcached Object Cache

1、WordPress默认支持Object Cache,所以在WordPress实现Memcached 就是使用Memcached把WordPress 的 Object Cache 写到内存中去,下次直接从内存中读取。

2、已经安装了WP Super cache,只要你的主机安装了Memcached组件可以直接使用Memcached内存缓存了,先下载:

1、Wordpress Memcached插件:Memcached Object Cache下载

3、下载Memcached Object Cache到本地,解压里面有object-cache.php。

Memcached解压文件

4、将它上传到你的Wordpress的wp-content,注意不是wp-content/plugins/

Memcached上传到网站

二、WP Super cache启用Memcached缓存

1、将object-cache.php上传后,再进入你的Wordpress的WP Super cache的高级设置中,就能看到:使用对象缓存系统来存储缓存文件。 (实验室功能)

Memcached启用了功能

2、勾选它点击更新就已经的WP Super cache启动Memcached内存缓存,在内容中就能看到提示Memcached缓存已经启用,没有可用列表显示。

Memcached没有可用列表

三、启用Memcached缓存效果分析

1、部落当前就已经由原来的WP Super cache生成静态文件改成了Memcached缓存,在没有缓存时数据库查询是35,加载页面花的时间在1.8秒左右。

Memcached加载时间

2、WP Super cache启用了Memcached内存缓存,数据库查询保持在15个,页面加载降低到了1秒以下。

Memcached降低了时间

四、未启用Memcached内存缓存效果

1、在未安装WP Super cache时,打开页面原来是22个查询,0.36秒。

Memcached未启用

2、在WordPress用了WP Super cache而未启用Memcached内存缓存,查询数增加了3个,时间降低了0.1秒。

Memcached查询数

五、Memcached内存缓存小结

1、本篇文章只是在某一个页面数据库查询数和页面生成加载时间作了对比,对于WP Super cache的Memcached内存缓存到底有多少效果不能一概而论,不同的主机环境效果也不同。

2、为了提高性能,memcached中保存的数据都存储在memcached内置的内存存储空间中。由于数据仅存在于内存中,因此重启memcached、重启操作系统会导致全部数据消失。