本当だった!PHP 5.5.30 から PHP 7.0.1 に上げて約2.4倍の高速化

PHP

概要

  • PHP 7がPHP 5.6と比べて2倍速いみたいな発表があったので試してみました。
  • このBlogはPHP7で動いています。
  • Changelogを見る感じだと、まだまだ大きなバグが出ているので運用環境で使うのは時期早々かと思いますが、PHP5系からPHP7系にするだけで本当に2倍速くなります。

測定環境

  • Wordpres4.4とZenCacheの環境です。
  • 純粋に1プロセスの処理時間を計測するために並列数は1
  • 運用環境に近い環境で測定したかったのでZenCacheは有効にした状態で計測
  • Mac OS X
  • ページのテキスト量が多いのでgzip付きで。

測定コマンド

% ab -n 1000 -c 1 -H "Accept-Encoding: gzip,deflate" https://matsu.teraren.com/blog/

PHP 5.5 + APCU

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

PHP 7.0.1 + APCU

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

PHP 7.0.1 + Opcache

よくよく調べてみると、PHP7自体にOpcode cacheがあるので、そちらを使った方が良さそう。
iniファイルでopcache関連を適当に有効化します。

設定ファイルの差分

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

ということで、手元の環境では、約2.4倍速くなりました !

まとめ

  • PHP5.5 + APCuと比較して、2.4倍速くなった!
  • ktai styleやone click updaterで、Deprecated warning出たので、プラグインを消して対応しました。
  • apcu_store() などのAPCU関連がまだPHP7には対応していません。redisに置き換えて対応しました。
    • たぶん、APCuはPHP7では不要な感じなので、別のストレージにした方が良いと思います。

コメント