PHP7対応でWebサイトの表示速度が向上!MixHostの評価

MixHost(ミックスホスト)はPHP7に対応しており、コントロールパネルからバージョンを切り換えることができます。PHP7は様々な部分が改良されていますが、最も大きな改善点は「PHP5の2倍以上の実行速度!」でしょう。ウェブサイトの運営者なら、WordPressの処理性能(レスポンス速度)がどれだけ向上するかが最も気になるところです。

すでに多くの方がPHP7に移行しているようですが、「(何となく)速くなった!」という体感的かつ主観的な評価が多く、具体的なデータを載せている記事がほとんどありません。ここではPHP5とPHP7とで稼働させたWordPressのレスポンス速度の比較結果を掲載します。

表示速度の比較

測定用サーバーから定期的にアクセスして、ウェブページの取得に要する時間を測定します。測定対象はもちろんWordPressサイトです。測定期間は 7日間 、そして 5分間隔で2回 実行しています。「7日×24時間×(60/5)×2」となり、測定回数は約4,000回となります。より詳しい内容は こちらの記事 を参考にしてください。

From 700 to 1,100Use up and down arrows to move selectionTo 1,100Use up and down arrows to move upper selectionFrom 700Use up and down arrows to move lower selectionUse TAB select grip buttons or up and down arrows to change selectionFrom Day1 22:00 to Day8 19:00Use left and right arrows to move selectionFrom Day1 22:00Use left and right arrows to move left selectionTo Day8 19:00Use left and right arrows to move right selectionUse TAB to select grip buttons or left and right arrows to change selectionPHP7.0PHP5.6100%Chart created using amCharts library
  PHP7 PHP5
有効測定 4,032回 4,032回
棄却検定除外 0.37% (15) 0.35% (14)
棄却検定閾値 1.46秒 1.67秒
エラー 0% (0) 0% (0)
3秒以上 0% (0) 0% (0)
中央値 0.84秒 0.92秒
平均値 0.84秒 0.93秒
ばらつき/標準偏差 0.14秒 0.16秒
変動係数 16.7% 17.2%
測定結果について
有効測定はエラーを省いた回数を示します。
測定実行のタイミングによりサーバーやネットワークの状態(混雑具合)が変動します。集計に影響を与える一時的な異常値(外れ値)を棄却検定「Grubbs' test(α=0.001)」により省いています。これは測定サーバー側の異常を省く意味もあります。
ばらつき(標準偏差)は、レスポンスの 約68%平均値 ± ばらつき に、 約95%平均値 ± ばらつき×2 に収まることを示します。つまり、ばらつきが小さいほどレスポンスが安定していることになります。
変動係数は「平均値に対する変動の割合」を示します。平均値(処理時間)が同じであっても、変動係数が大きい方の処理時間がばらつくことになります。

PHP5とPHP7の比較

同じサーバーを対象に、PHPのバージョンだけが異なる環境での比較となります。

MixHostは基本的に、コントロールパネルで設定したバージョンが全てのディレクトリに適用されます。つまり、ドメインごとに異なるバージョンを割り当てることができません。しかし、非公式ですが.htaccess内の記述でPHPのバージョンをディレクトリ単位で指定できます。この測定では、コントロールパネルの設定をPHP7、.htaccessの設定をPHP5として同時に測定しています。

PHP7で稼働するWordPressのレスポンス速度が向上していることが分かります。t検定による有意差(p<0.01)も確認でき、まったく同じ環境(サーバー)でも、PHP7にするだけで表示速度が改善されます。PHP5と比較して 約10% の高速化となりました。同時に測定したこともあり、時間帯による変動の傾向はほとんど同じです。PHPの実行速度の差がそのままグラフに現れています。

測定対象であるWordPressは「標準テーマ」かつ「プラグインなし」の状態です。PHPの処理が多くなるサイト、例えば「多機能なWordPressテーマを採用」「多くのプラグインを導入済み」などの条件であれば、PHP7の効果がより大きくなるでしょう。

互換性の問題がなければ、積極的にPHP7を使用するべきでしょう。高負荷時の挙動もPHP7が安定します。

他のレンタルサーバーとの比較

公式サイト   WordPress Static
環境 平均値 秒中央値 秒標準偏差 秒エラー %平均値 秒中央値 秒標準偏差 秒エラー %

0.210.210.0100.210.210.010

PHP5/CGI

0.240.220.0500.430.540.20

PHP7/CGI

0.240.210.0700.240.210.060

0.250.230.060.020.260.230.080.42

Xキャッシュ

0.290.250.0900.280.250.070

0.370.350.0800.360.350.050

0.380.370.0500.570.660.190

PHP7/FastCGI

0.40.40.1200.230.220.030

WordPressサーバー

0.420.350.200.40.350.150

0.430.470.2100.430.220.310

PHP7/FastCGI

0.450.450.1500.290.260.090

PHP7

0.460.450.030.050.350.310.10.02

キャッシュ無効

0.470.520.1500.430.540.210

PHP5/FastCGI

0.470.470.1200.230.220.030

0.540.70.2500.360.330.090.02

PHP5/FastCGI

0.550.540.1700.330.290.110

0.620.620.030.10.410.340.140.17

PHP7

0.620.590.3200.380.310.20

PHP7/Module

0.620.590.1100.40.390.040

キャッシュ無効

0.620.610.1200.380.370.050

PHPサーバー

0.620.70.2600.340.290.10

PHP5

0.630.620.0300.320.310.030

PHP7

0.630.590.3300.370.310.180

0.640.610.100.480.450.090

PHP7/CGI

0.660.620.1200.390.380.050

0.6600.2200.6600.230

0.670.650.070.150.520.470.140.15

キャッシュ

0.680.680.0600.690.690.060

PHP7/CGI

0.70.680.0900.510.490.070

PHP5

0.710.690.3300.370.30.180

0.710.730.300.350.310.110

0.720.710.0500.240.240.010

0.750.630.3100.560.470.290

PHP5

0.750.70.3700.370.310.160

モジュール

0.80.750.160.150.370.360.060.1

0.830.790.3900.340.280.150

PHP7

0.840.80.2600.740.690.160

PHP7

0.840.840.1400.670.670.060

PHP7

0.850.840.0600.670.660.050

PHP7

0.880.840.160.750.610.570.10

0.910.860.1600.510.490.070

0.920.880.200.640.610.240

0.930.920.0500.650.650.040

PHP5

0.930.920.1600.670.670.060

0.950.950.1200.520.50.080

CGI

0.950.90.1600.390.370.070

PHP5/FastCGI

0.970.960.40.150.420.410.070.07

PHP5

10.980.3100.770.80.140

PHP5/CGI

1.040.80.7700.530.490.110

1.051.010.1200.810.740.190

PHP5

1.11.050.1600.60.560.10

1.141.140.0400.270.260.020

ライトプラン

1.441.221.300.510.370.670

1.961.920.630.021.631.560.590.02

2.091.71.070.931.241.170.420.6

2.2300.650.111.9100.60.07

PHP5/FastCGI

2.722.550.670.072.412.170.660.07

PHP5/FastCGI

2.92.780.510.352.522.370.430.15

PHP7/FastCGI

2.922.80.530.272.572.460.360.22

PHP7

3.181.572.340.350.710.710.180.22

PHP5

3.31.532.470.50.720.720.180.45

3.363.090.630.022.892.720.350

3.7800.50.073.7700.510.1

4.564.530.3104.244.220.340

5.75.720.830.025.135.140.810.02

8.056.723.081.687.826.43.231.41

00000.340.290.150

00006.136.270.450

当サイトで測定済みのレンタルサーバーとの比較です。詳細は各リンク先を確認してください。

注意
最新の測定結果を優先的に表示するため、記事作成時の評価とこの比較結果(表のデータ)が異なる可能性があります。

未加工データ

From 700 to 1,100Use up and down arrows to move selectionTo 1,100Use up and down arrows to move upper selectionFrom 700Use up and down arrows to move lower selectionUse TAB select grip buttons or up and down arrows to change selectionFrom Day1 22:00 to Day8 19:00Use left and right arrows to move selectionFrom Day1 22:00Use left and right arrows to move left selectionTo Day8 19:00Use left and right arrows to move right selectionUse TAB to select grip buttons or left and right arrows to change selectionPHP7.0PHP5.6100%Chart created using amCharts library
  PHP7 PHP5
3秒以上 0% (0) 0% (0)
中央値 0.84秒 0.92秒
平均値 0.85秒 0.93秒
ばらつき/標準偏差 0.16秒 0.17秒
変動係数 18.8% 18.3%

測定結果について!
レンタルサーバーは、一つのサービス(プラン)に対して多数のサーバーが運用されています。これらの測定結果は、その中の一つに過ぎません。契約時期により割り当てられるサーバーのスペックは異なる可能性があります。また、同じサーバーを利用する他ユーザーの負荷も影響します。

関連記事

BLOG

UPDATE