大きく改善された処理性能!PHP7対応フレンドサーバーのベンチマーク

フレンドサーバー(Friend Server)はロサンゼルスにあるFriend Hosting,incが運営するレンタルサーバーです。海外サーバーなのでレスポンス性能は国内サービスに劣りますが、アダルトサイト対応という大きな特徴があります。その他の詳細はこちらのレビューを参考にしてください。

レンタルサーバーを検討する際、重要なポイントはウェブサイトの表示速度です。レスポンスが悪ければ訪問者にストレスを与え、検索順位にも悪影響です。もう一つは処理性能であり、表示速度はもちろんのこと高負荷時(アクセス増加時)の安定性に影響します。

約1年前にフレンドサーバーの処理性能を測定しましたが、その時の結果は褒められたものではありませんでした。WordPressの動作すら不安定なほどであり、おそらくユーザーを詰め込み過ぎていたことが原因だったと思います。

現在は改善されているのでしょうか?ここではフレンドサーバーの処理性能を評価した結果を掲載します。

フレンドサーバーの全てが分かる
フレンドサーバーのレビュー

測定方法

WordPressをインストールしたWebサイト(サーバー)を利用します。

  • 「ランダムな3,000文字/記事」の投稿と削除
    • 100記事をまとめて投稿、投稿後に全削除
    • 1記事ごとの生成処理を含む
  • 投稿と削除はWordPressの標準関数を利用
    • wp insert post、wp delete post

これらの処理を 5分間隔 で実行し、一連の処理時間を測定します。つまり、 PHPとデータベースの処理性能 を確認します。データセンター内(またはサーバー内)で完結する処理なので、外部ネットワーク環境の影響を受けません。

負荷について
100件程度は大した負荷ではありません。しかし、共用サーバーなので高負荷とならないように、1件ごとにwait処理を差し込んでいます。

測定結果

  PHP7 Apache PHP7 Nginx
有効測定数 864 864
棄却検定除外 0%(0) 0%(0)
棄却検定閾値 12.9秒 11.9秒
エラー 0%(0) 0%(0)
中央値 4.24秒 4.22秒
平均値 5.16秒 5.09秒
ばらつき 2.23秒 2.17秒
変動係数 43.2% 42.6%
測定結果について
72時間(3日間) の測定結果です。X軸は時刻(0時~24時)を表し、各時刻の値は3日間の平均値です。有効測定数はエラーを省いた実測定数です。
測定のタイミングによりサーバーの負荷状態(混雑具合)が変動します。集計に影響を与える一時的な異常値(外れ値)を棄却検定Grubbs' test(α=0.001)により省いています。
ばらつき(標準偏差)は、処理の 約68%平均値 ± ばらつき に、約95%平均値 ± ばらつき×2 に収まることを示します。ばらつきが小さいほど処理性能が安定します。
変動係数は「平均値に対する変動の割合」を示します。平均値(処理時間)が近い場合、変動係数が小さいほど安定します。

フレンドサーバーの評価

PHP7に対応するなど、前回と比較してPHPの動作環境が大きく変化しています。前回と同様「Apache+Nginx」の構成で動作していますが、様々な組み合わせが可能となりました。

タイプ パフォーマンス メモリ使用量
CGI+Apache
FastCGI+Apache
FPM+Nginx

メインは「FastCGI+Apache」または「FPM+Nginx」となるため、これらにPHP7を組み合わせた測定を行っています。PHP7はPHP5より実行速度が大幅に向上しており、これからの標準となります。

測定結果は前回と比較して大幅に改善されました。前回は高頻度でエラーが発生しており、PHPを常用するには厳しいものでした。今回の測定では国内サービス並の性能となっており、これならPHPで動作するアプリケーションの導入も問題ありません。

「FPM+Nginx」が少し高速に動作するようですが、どちらを選択しても問題ないように思えます。t検定による有意差は確認できません。

「FPM+Nginx」の場合、.htaccessなどのApache独自の機能が無効となります。例えばWordPressのパーマリンク設定が機能しなくなります。一般的な用途であれば「FastCGI+Apache」とするべきでしょう。

時間帯による変動は前回と変わりません。やはりアクセス(訪問者)の多くなる夜間に処理性能が落ちるようです。前回より大幅に改善されましたが、基本的に処理性能の余裕はないのでしょう。それでも利用料金を考慮すれば、十分な性能となったように思えます。

公式サイト
 フレンドサーバー /

PHP5とPHP7の比較

  PHP7.0+Apache PHP5.6+Apache
有効測定数 864 864
棄却検定除外 0%(0) 0%(0)
棄却検定閾値 16.4秒 15.3秒
エラー 0%(0) 0%(0)
中央値 4.28秒 5.15秒
平均値 5.56秒 6.45秒
ばらつき 2.63秒 2.64秒
変動係数 47.3% 40.9%

PHP7はPHP5と比較して大幅に実行速度が改善されています。この測定結果は同時期に同じサーバーに対して、PHPのバージョンのみ変えて測定したものです。

PHP7の測定結果が 約14% 改善されています。t検定による有意差(p<0.01)も確認できており、互換性の問題がなければPHP5を選択する理由はありません。

公式サイト
フレンドサーバー

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

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

1.71.670.070

PHP7/CGI

1.821.830.220

1.941.950.070

PHP7/CGI

2.0220.140

PHP7

2.152.120.321

2.162.170.080

PHP7

2.172.130.240

2.182.150.30

2.242.250.280

PHP7/FastCGI

2.282.230.250

PHP5/CGI

2.42.410.270

PHP5/CGI

2.412.390.150

2.522.430.330

PHP7

2.712.680.348

2.722.660.3735

PHP7/FastCGI

2.732.70.30

PHP5/FastCGI

2.732.680.270

2.862.860.090

PHP5

3.032.960.380

3.13.150.310

PHP7/Module

3.113.120.080

PHP&MySQL

3.113.010.330

3.133.140.070

PHP5/FastCGI

3.143.090.210

3.142.90.630

3.142.960.680

PHP7/CGI

3.193.190.130

3.23.180.110

PHP5

3.513.470.398

PHP5/FastCGI

3.613.60.40

3.643.60.290

WordPress

4.183.891.090

PHP7

4.224.070.470

4.224.270.30

4.424.430.180

4.54.470.580

PHP5/CGI

4.564.450.560

PHP5

4.964.860.450

PHP5/Module

5.124.960.80

PHP7

5.164.242.230

5.184.691.240

5.255.210.320

PHP7

5.255.170.370

5.315.320.110

PHP5

5.315.230.560

PHP7

5.675.520.740

5.715.590.450

PHP5

5.885.80.360

6.055.920.580

PHP5

6.455.152.640

PHP5

6.456.330.770

6.526.490.760

PHP5/FastCGI

6.646.670.330

6.96.910.130

ライト

7.416.932.160

8.37.313.550

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

個別データ

PHP7.0+Apache

結果 有効測定数 除外数 棄却閾値 エラー 中央値 平均値 ばらつき
Raw(未加工) 864回 - - 0%
(0回)
4.24秒 5.16秒 2.23秒
棄却検定 0%
(0回)
12.9秒 4.24秒 5.16秒 2.23秒
結果 有効測定数 除外数 棄却閾値 エラー 中央値 平均値 ばらつき
Raw(未加工) 864回 - - 0%
(0回)
4.28秒 5.56秒 2.63秒
棄却検定 0%
(0回)
16.3秒 4.28秒 5.56秒 2.63秒

PHP7.0+Nginx

結果 有効測定数 除外数 棄却閾値 エラー 中央値 平均値 ばらつき
Raw(未加工) 864回 - - 0%
(0回)
4.22秒 5.09秒 2.17秒
棄却検定 0%
(0回)
11.9秒 4.22秒 5.09秒 2.17秒

PHP5.6+Apache

結果 有効測定数 除外数 棄却閾値 エラー 中央値 平均値 ばらつき
Raw(未加工) 864回 - - 0%
(0回)
5.15秒 6.45秒 2.64秒
棄却検定 0%
(0回)
15.3秒 5.15秒 6.45秒 2.64秒

測定結果について
レンタルサーバーは1つのサービス(プラン)に対して多くのサーバーが運用されています。測定結果はその中の1つに過ぎません。契約時期で割り当てられるサーバーのスペックは異なり、さらに、同じサーバーに収容される他契約者の負荷に大きく左右されます。

関連記事

BLOG

UPDATE