🌌

PHP 5.5.30 から PHP 7.0.1 にアップグレードしたら本当に約2.4倍の速くなった

に公開

概要

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

測定環境

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

測定コマンド

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

PHP 5.5 + APCU

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

PHP 7.0.1 + APCU

約14%しか速くなっていないぞ。

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

PHP 7.0.1 + Opcache

よくよく調べてみると、PHP 7自体にOpcode cacheがある。
PHP7はPHPに元から付いているOpcacheを使った方が良さそう。

ということで、ini ファイルでopcache関連を適当に有効化します。

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

お。かなり速くなりました。

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

まとめ

  • 本当に 2.4倍速くなった!
  • ktai style や one click updater で、PHP 7 の Deprecated warning 出たので、プラグインを消して対応しました(もう使っていないので)
  • apcu_store() などの APCU 関連がまだ PHP 7 には対応していません。代替方法を調べるのが面倒なので、Redis に置き換えて対応しました。

元記事

Discussion