連載
» 2016年04月18日 05時00分 公開

とにかく速いWordPress(6):「WordPress“1000倍”高速化」チューニング 第二弾──「PHP 7」を導入する (1/2)

エンタープライズ用途での利用が増えている「WordPress」の高速化チューニングテクニックを解説する本連載。今回は、「1000倍高速化」を目指すチューニングテクニックの第二弾として、「PHP 7の導入」を実施します。

[中村けん牛,プライム・ストラテジー]

連載バックナンバー

 前回は、外部リポジトリのEPELリポジトリとRemiリポジトリを導入して「PHP 5.6+OPCache+APCu」環境を構築し、チューニングをしない初期状態から「約5.5倍」までWordPressのパフォーマンスを高速化できました。

photo WordPressの日本語ローカルサイト

 今回は、PHP実行環境を「PHP 7」に変更して、さらなるチューニングを施していきます。

 では早速実施していきましょう。これまで解説してきたチューニングの続きですので、この記事からご覧の方は、連載バックナンバーから、「約5.5倍」までチューニングを済ませておいてください。

これまでのチューニング内容 ページのロード時間
(デフォルト環境比)
1秒当たりの同時アクセス数
「Requests per second」(デフォルト環境比)
デフォルト環境 176ms 11.24
APCの導入
 チューニング方法をおさらい
70ms(約251%) 29.20
OPcache+APCuを導入
 チューニング方法をおさらい
66ms(約266%) 30.51
MariaDBの設定を調整
 チューニング方法をおさらい
64ms(約275%) 31.82
翻訳アクセラレータを導入(キャッシュ)
 チューニング方法をおさらい
53ms(約332%) 39.29
翻訳アクセラレータを導入(翻訳を停止)
 チューニング方法をおさらい
36ms(約488%) 56.78
gzip圧縮を用いる
 チューニング方法をおさらい
35ms(約502%)
Tunedの調整
 チューニング方法をおさらい
34ms(約517%) 58.47
event MPM+php-fpm構成に変更
 チューニング方法をおさらい
33ms(約537%) 60.79
PHP 5.6+OPCache+APCuを導入
 チューニング方法をおさらい
32ms(約550%) 61.84(約550.2%)

PHP 7+OPCache+APCuを導入する

 今回は、PHP実行環境を「PHP 7」に変更します。PHP 7は10年ぶりのメジャーバージョンアップがなされ、性能向上やメモリ使用量の削減など大きな改善が加えられたPHP実行環境です。

photo 「PHP 7.0」のダウンロードサイト

 PHP 7は、PHP 5と比べて2倍以上のパフォーマンス向上をもたらします。また、下位互換性があり、WordPressコアはバージョン4.4以降から対応しています。ただし既存のテーマやプラグインなどにまだ対応していないものもあるので、その点は注意が必要です。

 それでは、PHP 7を導入しましょう。Remiリポジトリから導入します。PHP 5.6とは共存できませんので、一度PHP 5.6と関連パッケージを取り除いてからyumでインストールします。

[root@ip ~]# yum remove php* -y
[root@ip ~]# yum --enablerepo=remi,remi-php70 install php php-mysqlnd php-gd php-xml php-xmlrpc php-mbstring php-mcrypt php-fpm php-opcache php-apcu -y

 これで、PHP 7環境のインストールは完了です。正しくインストールされたか、php -vコマンドでステータスを確認します。

[root@ip ~]# php -v
PHP 7.0.5 (cli) (built: Mar 30 2016 09:59:14) ( NTS )
Copyright (c) 1997-2016 The PHP Group
Zend Engine v3.0.0, Copyright (c) 1998-2016 Zend Technologies
    with Zend OPcache v7.0.6-dev, Copyright (c) 1999-2016, by Zend Technologies
[root@ip ~]# php -i | egrep 'apc|opcache'
Additional .ini files parsed => /etc/php.d/10-opcache.ini,
/etc/php.d/40-apcu.ini,
/etc/php.d/50-apc.ini
apc
apcu
MMAP File Mask => /tmp/apc.XXXXXX
apc.coredump_unmap => Off => Off
apc.enable_cli => Off => Off
apc.enabled => On => On
(略)
opcache.blacklist_filename => /etc/php.d/opcache*.blacklist => /etc/php.d/opcache*.blacklist
opcache.consistency_checks => 0 => 0
opcache.dups_fix => Off => Off
opcache.enable => On => On
opcache.enable_cli => Off => Off
(略)
       1|2 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。