ロリポップ!のCGI版とモジュール版との処理性能を比較しよう

この記事の内容は古いため現状と異なる可能性があります。新しい記事も参考にしてください。

2015年末に新サーバーへと移行したロリポップ!では、ライトプランとスタンダードプランとの間に、PHPの仕様差を設定しています。スタンダードプラン以上であれば、PHP5.6のモジュール版 (Apache module) を利用できるため、Webサイトのレスポンス向上に期待できます。

ここでは、ライトプラン (CGI)とスタンダードプラン (モジュール) とを比較し、どの程度の性能差があるのかを確認します。また、旧サーバーの測定結果とも比較し、本当にロリポップ!のサーバー性能が向上しているかも確認してみましょう。

プラン エコノミー ライト スタンダード エンタープライズ
5.4 CGI
5.5 CGI
5.6 モジュール × ×

詳細な測定結果はCGI版のみ掲載しています。モジュール版については、下記のページをご覧ください。

測定方法

WordPressを設置したサイト (サーバー) を利用します。

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

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

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

CGI版 測定結果

結果 有効測定数 除外数 エラー 中央値 平均値 ばらつき
Raw (未加工) 861回 - 0.35%
(3回)
3.70秒 3.83秒 0.64秒
Grubbs' test 0.46%
(4回)
3.70秒 3.81秒 0.60秒
測定結果について
72時間 (3日間) の測定結果となります。X軸は時刻(0時~24時)を表し、各時刻の値は3日間の平均値です。
有効測定数はエラーを省いた回数を示します。また、何らかの理由で測定が実行されなかったものも省かれます。
測定実行のタイミングによりサーバーの負荷状態 (混雑具合) が変動するため、集計に影響を与える一時的な異常値 (外れ値) を棄却検定 Grubbs’ test (α=0.001) により省いたデータも掲載しています。
ばらつき (標準偏差)
統計的な話ですが、処理の 約68%平均値 ± ばらつき に、約95%平均値 ± ばらつき×2 に収まることを示します。つまり、ばらつきが小さいほど処理性能が安定しているといえます。

エラー [3]|500 Internal Server Error (データベース接続エラー) [3/3]

CGI版、モジュール版、旧サーバーの比較

  CGI モジュール 旧サーバー
有効測定数 861 858 864
棄却検定除外 (回) 0.46%(4) 0.58%(5) 0.58%(5)
棄却検定閾値 6.55秒 4.52秒 24.56秒
エラー (回) 0.35%(3) 0%(0) 0%(0)
中央値 3.70秒 3.86秒 8.94秒
平均値 3.81秒 3.87秒 9.60秒
ばらつき 0.60秒 0.17秒 3.23秒

なかなか意外な結果となりました。

モジュール版が1割程度速くなると予想していましたが、 平均値 だけを比較すれば 同程度 です。若干CGI版の平均値が優れていますが誤差程度です。もう一つ意外な結果と思うのは、プラン間でサーバー性能に差を付けていないことです。細かなハードウェアの仕様は不明ですが、少なくともライトプランとスタンダードプランではサーバー環境に差はないようです。もし、PHPやデータベースを多用しないのであれば、ライトプランでも十分でしょう。

平均値は同程度でも、安定性はモジュール版が 非常に優秀 です。グラフのスケール (尺度) を変更すれば分かりますが、モジュール版はいつでも一定の処理性能を維持していることが分かります。ばらつき (標準偏差) を比較すれば、モジュール版の処理時間が安定していることが分かるでしょう。CGIについては、時間帯による処理性能のばらつきがあります。安定したレスポンスを必要とするWebサイトを運営するならモジュール版 (スタンダードプラン以上) を選択すると良いでしょう。

旧サーバーはなかなかにひどい結果です。正直なところ、このひどい性能で人気があった理由がよく分かりません。しかし、新サーバーの性能であれば非常にコストパフォーマンスが高く、どのプランを契約しても納得のいくWebサイトの運用ができるでしょう。

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

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

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

hostingstock.netで測定した他レンタルサーバーとの比較です。


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

関連記事

BLOG

UPDATE