今までに行ってきたWordpressの高速化設定ですが、どの程度の効果があるかベンチマークしてみました。
試験環境
さくらのVPS 2G/FreeBSD8.2(64bit)
nginx/1.2.3 + php/5.2.17
Wordpress3.5
試験コマンド
同時接続10で10秒間テストを実行
ab -c 10 -t 10 https://mmio.net/
素の状態
APC:OFF, Cache:OFF
Server Software: nginx/1.2.3
Server Hostname: mmio.net
Server Port: 80
Document Path: /
Document Length: 45331 bytes
Concurrency Level: 10
Time taken for tests: 12.473 seconds
Complete requests: 21
Failed requests: 0
Write errors: 0
Total transferred: 1266922 bytes
HTML transferred: 1260862 bytes
Requests per second: 1.68 [#/sec] (mean)
Time per request: 5939.750 [ms] (mean)
Time per request: 593.975 [ms] (mean, across all concurrent requests)
Transfer rate: 99.19 [Kbytes/sec] received
なにもチューニングしてない状態のWordpressだと1.68件/秒しか処理できませんでした。
Wordpressは重いと良く言われていますが、思わず納得してしまいそうな遅さです。
APCを使ってPHPを高速化
APC:ON, Cache:OFF
Server Software: nginx/1.2.3
Server Hostname: mmio.net
Server Port: 80
Document Path: /
Document Length: 45329 bytes
Concurrency Level: 10
Time taken for tests: 10.021 seconds
Complete requests: 130
Failed requests: 0
Write errors: 0
Total transferred: 6012923 bytes
HTML transferred: 5985653 bytes
Requests per second: 12.97 [#/sec] (mean)
Time per request: 770.837 [ms] (mean)
Time per request: 77.084 [ms] (mean, across all concurrent requests)
Transfer rate: 585.98 [Kbytes/sec] received
APCによりPHP実行が高速化されたため、12.97件/秒と大幅に速度が向上しています。
この程度の処理能力があれば、普通に使う分には何も不満は感じないはずです。
と言うか、10万PV/dayとかのブログでも余裕で捌けそうな気がします・・・
Nginx ProxyCacheを使った高速化
APC:ON, Cache:ON
Server Software: nginx/1.2.3
Server Hostname: mmio.net
Server Port: 80
Document Path: /
Document Length: 45337 bytes
Concurrency Level: 10
Time taken for tests: 10.000 seconds
Complete requests: 24795
Failed requests: 0
Write errors: 0
Total transferred: 1129185044 bytes
HTML transferred: 1124176252 bytes
Requests per second: 2479.50 [#/sec] (mean)
Time per request: 4.033 [ms] (mean)
Time per request: 0.403 [ms] (mean, across all concurrent requests)
Transfer rate: 110271.78 [Kbytes/sec] received
Nginx ProxyCacheによる動的コンテンツの再利用は効果が絶大です。
2479.5件/秒と、ちょっと意味が分からない速度となっています。
NginxのProxyCacheが必要な状況と言うのがちょっと思い浮かばないので、
Wordpressを快適に使うにはAPCでPHPを高速化するだけで十分じゃね?
と言う事で良いですかね?
だめ?