• 02
  • 7月

做毕业设计时对wordpress几个缓存插件进行了性能分析。费了老大劲测得的数据仅仅扔在毕业论文里实在可惜。精简一下,与大家共享。

测试环境:virtualbox中全新安装的Ubuntu 9.04 Server,标准LAMP环境。

测试工具:httperf、top

测试方案:无缓存、WP Super Cache半开、WP Super Cache全开、cos-html-cache共四种状态。在每种状态下分别对首页和id为148的文章页面进行测试。

每次测试前在服务器端使用命令

top -bSn 1 >Xt0.txt

将各个进程的CPU使用情况记录到一个txt文件中。

为什么不使用ps:虽然查看进程信息的“标准”命令是ps,但在linux下ps输出的CPU时间仅精确到秒,而top可以精确到0.1秒。top使用参数b时使用批量模式,将系统中所有进程的情况遍历输出参数n指定的遍数后退出。

然后在客户端使用httperf对指定页面进行50次顺序访问,所有测试结果以这50次的平均值为准。对id为148的页面httperf命令如下

httperf --hog --server 192.168.1.104 --uri /wordpress/archives/148.html --num-conn 50 --timeout 60

httperf测试完成后,马上在服务器端使用top命令记录测试后各进程CPU时间。测试期间服务器没有其他负载,所以可以认为apache2、mysqld的CPU使用完全是由wordpress引发的。

数据处理部分就不说了,无非就是加减乘除。直接上性能对比图!

响应速率

响应速率

apcahe CPU占用对比

apcahe CPU占用对比

mysql CPU对比

mysql CPU对比

不得不说,wordpress在效率上确实不怎么样,随便一缓存性能就有十几倍的提升。

至于WP-Super Cache、cos-html-cache的优缺点已经有很多讨论了,在此不再重复。

但有一点要强调的是,本测试是基于对同一篇文章连续访问的情况下测得的。在这种情况下缓存是100%命中的,而事实上WP-Super Cache缓存有效时间只有十分钟,在缓存失效的情况下访问一下页面,由于要重建缓存,响应速度反而会比没有缓存慢一些。不过由于wordpress本身的速度,慢的这点应该是不明显的。

标签:

您可以对这篇文章发表一条评论,或者在您自己的网站中引用 (Trackback) 它

对《wordpress缓存插件性能测试与分析》有 4 条评论

  1. 美国VPS推荐 说:

    没用缓存插件,。。Webserver用的Nginx

  2. yesureadmin 说:

    有没有这么厉害,你在用什么缓存插件?

  3. Tony Zhu 说:

    这个纯理论的分析,没有考虑缓存过期的问题。实际上缓存的效果并没有这么明显。现在访问量很小的时候都没用缓存。

  4. 指南者 说:

    哇 好专业的测评 就是对比的插件少了些

发表一条评论

所有标签:.net Ajax Java javascript Linux map MySQL RSS TD-SCDMA Ubuntu vim web Win7 乱码 基础知识 备份 奥运会 希望泉 性能 缓存 编程