「とにかく速いWordPress」をやってみた

@IT で連載されている、とにかく速いWordPressを、実際にやってみたので覚書きとして。

連載では AWS「t2.medium」の2vCPU、4GiB ですが、私が試したのは1コアでメモリも1.75GBと半分程度。
さて、この環境がどこまで変わるでしょうか・・

インストールしたて

インストールしたてのWordPress、Firebugで見ると536ms。
abの結果は
Requests per second: 2.41 [#/sec] (mean)

でした。

PHPアクセラレータ「APC」を導入

Firebugで見ると373ms
Requests per second: 2.48 [#/sec] (mean)

表示速度が1.4倍になりました!
1秒当たりの同時リクエスト数(Requests per second)もちょとよくなっていますね。

PHPアクセラレータ「OPcache」、KVSの「APCu」を導入

Firebugで見ると173ms
Requests per second: 6.95 [#/sec] (mean)

表示速度がさらに2倍になりました!
abの結果もなんと2.8倍。

ここまでで
表示速度が3倍。
abの結果2.9倍。

ほぼ3倍ですね♪

MariaDBの設定を調整

クエリキャッシュを有効にしてinnodb_buffer_pool_sizeを設定します。

Firebugで見ると113ms
Requests per second: 7.45[#/sec] (mean)

表示速度が1.5倍。
abの結果1.07倍。

実はこの時の113msが今回の最高で、その後はこれより遅くなったり、結果に揺れがでてしまいました。
ネットワークとかいろんな要因に左右されるFirebugでの表示速度の測定はこれ以上の微妙なチューニングでは難しいな、と思いました。もう少しスペックが上のものだったら数字にも現れやすかったかもしれないです。

というわけでここからは結果のみ一気に。

翻訳アクセラレータを導入(キャッシュ)

Firebugで見ると148ms
Requests per second: 7.20[#/sec] (mean)

翻訳アクセラレータを導入(翻訳を停止)

Firebugで見ると130ms

Requests per second: 7.39[#/sec] (mean)

gzip圧縮を用いる

Firebugで見ると117ms
Requests per second: 7.33[#/sec] (mean)

Tunedの調整

Firebugで見ると139ms
Requests per second: 7.40[#/sec] (mean)

event MPM+php-fpm構成に変更

Firebugで見ると149ms
Requests per second: 7.58 [#/sec] (mean)

PHP 5.6+OPCache+APCuを導入

Firebugで見ると134ms
Requests per second: 7.97 [#/sec] (mean)

最後に測定!!!

このブログを書きながら最後にもう一回測って見ました。

Firebugで見ると118ms
Requests per second: 8.56 [#/sec] (mean)

はじめと比べると
Firebugで見た表示速度4.5倍
1秒当たりの同時リクエスト数3.55倍
という結果になりました。

1コア、メモリが2GB以下でも、かなり変わったと思います。
データの入ってない、アクセスのないデフォルトのWordPressだとあまり数字に現れにくかったりしますが、
データやプラグインが入っくるともっと効果が出そうです。

今回の環境では、PHPアクセラレータの導入やDBの調整、PHP 5.6+OPCache+APCuで
特に大きめの変化がみられました。

第1回めから第5回めまでを通してやってみましたが、環境を立ち上げはじめてから、
このブログに書く時間もいれて3時間くらいでした。
(インストールとかアップデートにかかる時間が一番多かったです)

サーバーとか黒い画面が怖いよー、
とか
サーバーとか高速化とか、あんまり興味ないなー、
という人でもとりあえずためしてみると、数字が確実に変わって行くので、
そんなに長い時間かからないし、やってみるのも面白いんじゃないかな、と思います♪

私はこれから、今日やってみたひとつひとつと結果を復習です。

コメントをどうぞ♪