残念ながら「安かろう悪かろう」に戻るのでしょうか?ロリポップ!1年後の再評価

ロリポップ(Lolipop)では2015年末にサーバー環境が刷新され、高性能ハードウェアへのリプレイスやモジュール版PHP対応など、大幅なアップグレードが実施されました。既存ユーザーに対する移行サービスも提供され、かなり良心的なレンタルサーバーだなと思った記憶があります。

それまでのロリポップ!の評価は「人気の理由が分からない」であり、数値的に評価するほど料金に見合わない性能でした。しかし、環境刷新後の評価では、上位クラスのレスポンス性能を実現するなど、コストパフォーマンス抜群なサービスに生まれ変わりました。

それから1年ほど経過しますが、当時の性能は今でも維持されているのでしょうか?大々的にアピールした「最初だけ」性能の高いサービスもあります。今回は1年経過後に再測定した結果を基に、ロリポップ!の現在を評価します。

レンタルサーバーを選択する際、大切なポイントは「Webサイトの表示速度」です。いくら豊富な機能に対応しても、運営サイトのレスポンスが悪ければ絵に描いた餅です。訪問者を自分に置き換えれば、なかなか開かないページにイライラすることは想像に難くないでしょう。そして、レスポンスの悪さは検索順位にも悪影響です。

ロリポップ!の全てが分かる
ロリポップ!のレビュー

表示速度の重要性

様々な調査結果により 3秒 という時間がレスポンス性能のキーワードとなります。

コンテンツが表示されるまでに3秒を超えてしまうと、

  • 訪問者の40%がサイトから離脱(データによっては57%)
    • 訪問者の47%は2秒以内の読み込みを希望
  • 訪問者の79%は、そのサイトを再訪しない

レスポンス性能の影響は様々です。

  • 1秒遅くなると、ページビュー11%減、コンバージョン率7%減、顧客満足16%減
  • 10万ドル/日を売り上げるサイトであれば、1秒の遅れで250万ドル/年の損失
    • Amazonであれば1秒の遅れで、16億ドルの機会損失
  • モバイル環境(スマートフォンなど)ではネットワーク環境が貧弱なこともあり、より厳しい評価となります

快適なWebサイトの条件は、「最低でも3秒以内」「理想は2秒以内」のレスポンスとなります。それを越えてしまうと、どうしても必要な情報がない限り目に触れる機会すらなくなります。

参考
How Loading Time Affects Your Bottom Line
The Cost of Poor Web Performance - INFOGRAPHIC
hostingstockの測定結果について
端末(パソコンやスマートフォン)のレンダリング等の処理時間を含みません。理由は訪問者の端末性能やブラウザの種類により、処理時間が大きく異なるためです。つまり、測定結果はWebページを構成するデータを受信するために必要な時間を示しています。実際にWebページが表示されるまでには、HTML解析やJavaScript処理などを含む描画時間が加算されます。

測定方法

測定用サーバーから定期的にアクセスして、Webページの取得に要する時間を測定します。測定対象として「WordPress(動的ページ)」と「HTML(静的ページ)」があります。より詳しい内容は こちら を参考にしてください。

測定対象  
動的ページ(WordPress) WordPressサイト(PHP&データベース)。コンテンツは平均的なウェブページの構成を採用(HTTP Archiveの統計データを利用)。
静的ページ(HTML) HTMLファイルによるサイト。WordPressが生成したデータをHTMLファイル化。PHPとデータベースを使用しません。
外部サービスを利用しない理由
PingdomやGTmetrixでレンタルサーバーの性能を評価しても意味がありません

測定期間

測定期間は 7日間 であり、5分ごとに2回の測定を行います。つまり、「7日×24時間×12回(60/5)×2回」の約4,000回となります。

一度きりの測定では意味がないため、一定期間の継続した測定を行っています。「利用者や訪問者が測定時だけ少なくレスポンスが良かった」「一時的なトラブルが原因でレスポンスが悪かった」という、誤った結果となることを(完全ではありませんが)防げます。

一定期間測定することで、利用者や訪問者が変動する日中、夜間、深夜の差を確認することもできます。例えば、訪問者が多くなり負荷が高くなる夜間と、負荷の下がる深夜との差が小さければ、負荷に強いサーバーであることを推測できます。

測定経路

あくまでも推測ですがロリポップ!のデータセンターは「東京(品川区)」にあるようです。姉妹サービスのヘテムル(heteml)やZ.comなどGMO系列の他サービスも同じデータセンターに収容されています。

経路図は測定元からデータセンターまでのネットワークを示しており、経由するIX(インターネットエクスチェンジ)等を含みます。測定元はK-Opticom(インターネットプロバイダ)のネットワーク内、関西圏(赤い円)にあるサーバーです。

測定環境
測定用サーバーは 測定専用 として、測定以外に利用していません。
eo光(K-Opticom/関西電力)100Mタイプ
ルーターとサーバーは有線接続

測定結果

  WordPress
CGI
HTML
(CGI)
WordPress
Module
HTML
(Module)
有効測定 4,032回 4,032回 4,026回 4,028回
棄却検定除外 4.89% (197) 6.37% (257) 4.35% (175) 5.54% (223)
棄却検定閾値 1.74秒 0.72秒 1.62秒 0.66秒
エラー 0% (0) 0% (0) 0.15% (6) 0.10% (4)
3秒以上 1.61% (65) 0.79% (32) 1.17% (47) 0.79% (32)
中央値 0.90秒 0.37秒 0.75秒 0.36秒
平均値 0.95秒 0.39秒 0.80秒 0.37秒
ばらつき/標準偏差 0.16秒 0.07秒 0.16秒 0.06秒
変動係数 16.8% 18.0% 20.0% 16.2%
測定結果について
測定実行のタイミングによりサーバーやネットワークの状態(混雑具合)が変動します。集計に影響を与える一時的な異常値(外れ値)を棄却検定Grubbs' test(α=0.001)により省いています。これはネットワークを含む測定サーバー側の異常を省く意味もあります。
ばらつき(標準偏差)は、レスポンスの 約68%平均値 ± ばらつき に、 約95%平均値 ± ばらつき×2 に収まることを示します。ばらつきが小さいほどレスポンスが安定します。
変動係数は「平均値に対する変動の割合」を示します。平均値(処理時間)が近い場合、変動係数が小さいほど安定します。
エラー内容  
WordPress Module [6] 503 Service Temporarily Unavailable [5] / 502 Proxy Error [1]
HTML (Module) [4] 503 Service Temporarily Unavailable [4]

ロリポップ!の評価

ロリポップ!はデータベース専用のサーバーが稼働しており、データベース作成時に選択できす。そのためデータベースの性能差が影響しないように、同じ(データベース)サーバーを参照するように設定しています。

測定対象はスタンダードプランの「モジュール版PHP5」と「CGI版PHP5」です。

WordPress(動的ページ)とHTML(静的ページ)をペアで測定しているため、HTMLの結果が二つあります。また、表のHTMLにCGIやModuleの表記がありますが、組み合わせを示しているだけです。WordPressとHTMLとの差が、PHPやデータベースの処理時間となります。

同じ期間かつ同じサーバーに対する測定なので、HTMLの結果はそれぞれ同じような傾向となります。

WordPressの結果を比較するとモジュール版が優れていることが分かります。さらに、全てのデータ(未加工データ)によるt検定で有意差(p<0.01)を確認できました。エラーは少し気になりますが、モジュール版が速いことに間違いありません。

モジュール版が優れていることを確認できましたが、棄却検定による除外数が異常なことなっています。それでは除外データを含む未加工データを詳細に確認しましょう。

未加工データの評価

  WordPress
CGI
HTML
(CGI)
WordPress
Module
HTML
(Module)
3秒以上 1.61% (65) 0.79% (32) 1.17% (47) 0.79% (32)
中央値 0.91秒 0.38秒 0.75秒 0.36秒
平均値 1.05秒 0.48秒 0.88秒 0.45秒
ばらつき/標準偏差 0.76秒 0.47秒 0.47秒 0.43秒
変動係数 72.4% 97.9% 53.4% 95.6%

一時的(偶発的)な遅延を省くために棄却検定を適用していますが、全体の「5%」となると無視できません。未加工データをみると、夜間の性能低下が異常なことになっています。

この測定期間だけ発生している可能性もありますが、後述する全体的な性能低下をみると、おそらく恒常的な状況なのでしょう。

しかし、同時期に実施してるベンチマークの結果を見ると、夜間帯に大きな性能低下は発生していません。 処理性能の影響を受けにくいHTMLの結果も同時に低下していることから、「ネットワークに過大な負荷がかかっている」ことを推測できます。同時期に他社サービスの測定も実施しており、測定元のネットワーク環境に問題がないことは確認済みです。

ユーザーが増えすぎてネットワーク性能の許容を超えているのではないでしょうか?と思いたいところですが、おそらくサーバーの負荷を下げるために「帯域調整」を実施しているのでしょう。ユーザーを詰め込むだけ詰め込み、無理矢理バランスをとっているような印象です。

稼働直後との比較

  稼働直後 今回
有効測定 4,032回 4,026回
エラー 0% (0) 0.15% (6)
3秒以上 0.07% (3) 1.17% (47)
中央値 0.43秒 0.75秒
平均値 0.50秒 0.88秒
ばらつき/標準偏差 0.22秒 0.47秒
変動係数 44.0% 53.4%

これは2016年の初め、新サーバー稼働直後に測定したデータとの比較です。スタンダードプランの「モジュール版PHP5」の結果であり、どちらも棄却検定を適用していません。

この結果を見れば明らかですが、わずか1年でここまで性能が劣化しました。「約76%」のダウンであり、もはや別のサービスを利用しているかのようです。例え夜間帯のデータを除いたとしても、稼働直後の性能には遠く及びません。

同じサーバーでも1年で大きく劣化

  WordPress
稼働直後
HTML
稼働直後
Wordpress
今回
HTML
今回
有効測定 4,022回 4,022回 4,032回 4,032回
エラー 0.25% (10) 0.25% (10) 0% (0) 0% (0)
3秒以上 0.07% (3) 0.10% (4) 2.73% (110) 1.44% (58)
中央値 0.86秒 0.43秒 1.22秒 0.37秒
平均値 0.91秒 0.51秒 1.44秒 0.51秒
ばらつき/標準偏差 0.22秒 0.35秒 1.30秒 0.67秒
変動係数 24.2% 68.6% 90.3% 131.4%

hostingstockでは幾つものサーバーを契約しており、ロリポップ!も長期契約しています。ライトの(新サーバー)稼働直後と現在の測定結果(未加工データ)を比較することで、同じサーバー(環境)でも大幅に性能低下していることを示します。これにより、今回の測定で利用したスタンダードのサーバーが「ハズレ」という可能性を払拭できるでしょう。

同じサーバーにも関わらず、わずか1年でこれだけ劣化したことが分かります。とても同じサーバーの結果とは思えません。夜間帯の遅延はスタンダードと同じ傾向であり、ロリポップ!のサービス全体で品質が低下しているのでしょう。

ライトプランとスタンダードプランとの比較

  ライトプラン スタンダードプラン
有効測定 4,032回 4,032回
エラー 0% (0) 0% (0)
3秒以上 2.73% (110) 1.61% (65)
中央値 1.22秒 0.91秒
平均値 1.44秒 1.05秒
ばらつき/標準偏差 1.30秒 0.76秒
変動係数 90.3% 72.4%

ライトとスタンダードとの比較結果です。ライトの仕様に合わせて「CGI版PHP5」の測定結果(未加工データ)を採用しています。

稼働直後のベンチマークは、ライトもスタンダードも優秀な結果でした。しかし、今回のベンチマークでは、どちらも処理速度が低下しています。特にライトは同じサーバーとは思えないほど、大幅な性能低下となりました。

比較結果から分かることは、おそらくライトの収容数が異常に多いということです。単純に考えれば、ライトの料金でスタンダード並の利益を得るには、より多くのユーザーを収容する必要があります。しかし、他社ではここまで露骨な差が付くことはありません。一般的に「プランの差=機能の差」であり、性能にまで差を付けません。性能差がある場合、それが上位プランのメリットとなるため公式サイトに明記するはずです。

○○○との比較

毎回他社との比較記事を掲載していますが、この結果では比較の意味がありません。

新サーバーに移行してから劇的に改善されたため、「コストパフォーマンスの高い」おすすめレンタルサーバーとしていました。しかし、この結果ではとてもオススメできるものではありません。結局のところ、「安いなりに動けば良い」という運用方針は旧サーバーの時と変わっていないようです。この状況を放置していることからも、運営側からすれば許容範囲なのでしょう。

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

公式サイト   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
注意
最新の測定結果を優先的に表示するため、記事作成時の評価とこの比較結果(表のデータ)が異なる可能性があります。

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

関連記事

BLOG

UPDATE