大型アップデートでWebサイトの表示速度が劇的に改善!ヘテムルの評価と比較

2016年11月にヘテムル(heteml)のサーバー構成が刷新されました。モジュール版PHP対応や最新ハードウェアの採用など、大型アップデートとなっています。元々高性能なサービスでしたが、さらに快適なサイト運用が可能となっています。

旧サーバーの場合、レスポンス性能は非常に安定していましたが、(利用料金を考慮すると)速度的に少し不満があるものでした。 今回のサーバー刷新に伴いWebサイトの表示速度がどれだけ向上しているかを測定し、旧サーバーと比較します。

レンタルサーバーを選択する際、大切なポイントは「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回となります。

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

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

測定経路

ヘテムルは東京と大阪のデータセンターで運用されているようですが、大阪のデータセンターが割り当てられたことはありません。おそらく、メインは東京(品川区)にあるデータセンターでしょう。ロリポップ!やバリューサーバーなど、GMO関連のサービスが収容されています。

Q. サーバー(データセンター)はどちらに設置されていますか?

A. 東京と大阪の大手データセンター内に収容させていただいております。また、24 時間 365 日、有人及びソフトウェアにてサーバーの監視を行っております。

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

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

測定結果

  WordPress
PHP7/CGI
HTML
(PHP7/CGI)
WordPress
PHP7/Module
HTML
(PHP7/Module)
有効測定 3,988回 3,988回 3,988回 3,988回
棄却検定除外 0.70% (28) 1.93% (77) 0.50% (20) 2.11% (84)
棄却検定閾値 1.25秒 0.65秒 1.17秒 0.59秒
エラー 1.10% (44) 1.10% (44) 1.10% (44) 1.10% (44)
3秒以上 0% (0) 0% (0) 0% (0) 0% (0)
中央値 0.62秒 0.38秒 0.59秒 0.39秒
平均値 0.66秒 0.39秒 0.62秒 0.40秒
ばらつき/標準偏差 0.12秒 0.05秒 0.11秒 0.04秒
変動係数 18.2% 12.8% 17.7% 10.0%
測定結果について
測定実行のタイミングによりサーバーやネットワークの状態(混雑具合)が変動します。集計に影響を与える一時的な異常値(外れ値)を棄却検定Grubbs' test(α=0.001)により省いています。これはネットワークを含む測定サーバー側の異常を省く意味もあります。
ばらつき(標準偏差)は、レスポンスの 約68%平均値 ± ばらつき に、 約95%平均値 ± ばらつき×2 に収まることを示します。ばらつきが小さいほどレスポンスが安定します。

ヘテムルの評価

無視できない数のエラーが発生していますが、一時的な障害が原因です。一時的な不具合はどのサービスでも発生するため、エラーはないものとして評価します。障害の詳細は下記のリンク先(公式サイト)で確認できます。この障害時以外では発生していません。

新仕様の特徴は「モジュール版PHP対応」となっているので、「モジュール版PHP7」と「CGI版PHP7」とで稼働するWordPressを測定対象としています。

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

同じ期間かつ同じサーバーに対する測定なので、HTMLの結果はそれぞれ同じようなものとなります。HTMLに関しては詳細な評価を行いませんが、旧サーバーと比較して「44%」も速度が向上しています。この結果からも基本性能が大幅に向上していることが分かります。

WordPressの結果を比較するとモジュール版が優れていることが分かります。さらに、t検定による有意差(p<0.01)も確認できました。さらに、僅かですがばらつき(標準偏差)が小さく、モジュール版がより安定したレスポンス性能を維持していることが分かります。

この測定におけるCGI版とモジュール版の差は大きくありませんが、モジュール版PHPはアクセスが多くなるほど効果的なので、訪問者の多いサイトほど大きな差となります。

しかし、新サーバーの恩恵はモジュール版PHPではなく、高性能なハードウェアでしょう。「10コアx2CPU」や「128GBの大容量メモリ」など、一般的なレンタルサーバーでは最高レベルのサーバーを採用しています。 後述する旧サーバーとの比較を確認すると分かりますが、同じ測定対象(CGI版PHP7)との差はかなり大きくなっています。

以前から機能的には文句のないほどの充実度でしたが、利用料金を考慮するとレスポンス性能は凡庸でした。今回のサーバー刷新により、よりコストパフォーマンスの高いサービスになったと言えます。

旧サーバーとの比較

  旧 PHP5/CGI 旧 PHP7/CGI 新 PHP7/CGI 新 PHP7/Module
有効測定 4,030回 4,030回 3,988回 3,988回
棄却検定除外 1.17% (47) 2.56% (103) 0.70% (28) 0.50% (20)
棄却検定閾値 2.08秒 1.31秒 1.25秒 1.17秒
エラー 0.05% (2) 0.05% (2) 1.10% (44) 1.10% (44)
3秒以上 0.15% (6) 0.07% (3) 0% (0) 0% (0)
中央値 1.43秒 1.07秒 0.62秒 0.59秒
平均値 1.46秒 1.07秒 0.66秒 0.62秒
ばらつき/標準偏差 0.13秒 0.05秒 0.12秒 0.11秒
変動係数 8.90% 4.67% 18.2% 17.7%

ほぼ同時期に測定しており、この結果が新旧の性能差を示していると考えてもよいでしょう。

この比較結果から分かることは、新サーバーの性能が大幅に向上しているということです。新旧の同じ「PHP7/CGI」を比較すると「約38%」の改善を確認できます。

旧サーバーでもPHP7を利用することで必要十分な性能となっていましたが、新サーバーは他社と比較しても上位クラスの性能を有しています。さらにモジュール版PHPに対応するため、速度だけでなく安定性も大きく改善されたことになります。

新サーバーとは関係ありませんが、PHP7はPHP5と比較して大幅に実行速度が向上しています。旧サーバーの結果を見れば一目瞭然です。互換性の問題がなければ、積極的にPHP7を採用するべきでしょう。例えば、WordPressならPHP5.6以上が推奨されており、PHP7でも問題なく動作します(第三者提供のプラグインやテーマを除く)。

エックスサーバー、Zenlogic、ロリポップ!との比較

  ヘテムル
PHP7/Module
エックスサーバー
PHP7/FastCGI
Zenlogic
PHP5/Module
ロリポップ
PHP7/Module
有効測定 3,988回 4,028回 4,026回 4,026回
棄却検定除外 0.50% (20) 0.77% (31) 2.24% (90) 4.35% (175)
棄却検定閾値 1.17秒 0.91秒 1.04秒 1.62秒
エラー 0% (0) 0% (0) 0.15% (6) 0.15% (6)
3秒以上 0.00% (0) 0% (0) 0.60% (24) 1.17% (47)
中央値 0.59秒 0.40秒 0.65秒 0.75秒
平均値 0.62秒 0.40秒 0.67秒 0.80秒
ばらつき/標準偏差 0.11秒 0.12秒 0.07秒 0.16秒
変動係数 17.7% 30.0% 10.5% 20.0%
測定結果について
動的ページ(WordPress)の比較です。グラフのX軸は7日間を4時間毎に区切ったものです。
変動係数は「平均値に対する変動の割合」を示します。平均値(処理時間)が同じであっても、数値が大きいほどばらつきます。

比較対象は、エックスサーバー(XSERVER社)、Zenlogic(ファーストサーバ社)、そして、姉妹サービスであるロリポップ!です。特にエックスサーバーは、料金的にヘテムルと比較されることも多いでしょう。

ヘテムルも高性能なハードウェアを採用していますが、エックスサーバーには及びません。XSERVER社はエックスサーバーに注力しており、毎年のようにハードウェアを更新しています。上位サービスX2との(性能的な)逆転現象も起こっており、設備投資が他のサービスとは一線を画します。標準でSSLサーバー証明書を備えるなど、コストパフォーマンスの高さは異常と言えます。

Zenlogicは最廉価プランの結果であり、これがベースの性能となります。唯一PHP7非対応なので少し不利ですね。Zenlogicはプランにより割り当てリソースが変化するため、上位プランほど性能が向上します。ZenlogicはVPSを応用したサービスであり、一般的なレンタルサーバーと比較して、他サイトの影響を受けにくいという特徴があります。安定性重視のサイト運営が目的なら、公式サイトを覗いてみてはいかがでしょうか。

姉妹サービスのロリポップ!は、廉価サービスなりの結果となりました。かなりばらつきますが、ヘテムルの下位サービスであることを考えれば十分かもしれません。ただし、棄却検定による除外数が異常に多く、その多くが夜間に集中してます。利用者が増えたためか、訪問者の増える夜間にレスポンス速度が大きく低下する傾向にあります。詳しくはロリポップ!の測定記事をご覧ください。

ヘテムルはエックスサーバーに及ばないだけであり、他社を含めて安定性はトップクラス、速度は上位クラスの性能です。モジュール版PHPに対応したことで、アクセス増加時の安定性にも期待できます。仕様(機能)も充実しており、誰が利用しても不満の出にくいサービスであることは以前と変わりません。

各サービスの公式サイト
  ヘテムル / エックスサーバー / Zenlogic / ロリポップ!

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

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

未加工データ

新サーバー

  WordPress
PHP7/CGI
HTML
(PHP7/CGI)
WordPress
PHP7/Module
HTML
(PHP7/Module)
3秒以上 0% (0) 0% (0) 0% (0) 0% (0)
中央値 0.62秒 0.39秒 0.59秒 0.39秒
平均値 0.67秒 0.40秒 0.62秒 0.40秒
ばらつき/標準偏差 0.15秒 0.07秒 0.13秒 0.06秒
変動係数 22.4% 17.5% 21.0% 15.0%

旧サーバー

  WordPress
PHP5/CGI
HTML
(PHP5/CGI)
WordPress
PHP7/CGI
HTML
(PHP7/CGI)
有効測定 4,030回 4,030回 4,030回 4,030回
エラー 0.05% (2) 0.05% (2) 0.05% (2) 0.05% (2)
3秒以上 0.15% (6) 0.02% (1) 0.07% (3) 0.05% (2)
中央値 1.43秒 0.70秒 1.07秒 0.70秒
平均値 1.47秒 0.72秒 1.09秒 0.72秒
ばらつき/標準偏差 0.18秒 0.11秒 0.15秒 0.12秒
変動係数 12.2% 15.3% 13.8% 16.7%
エラー内容  
WordPress PHP5/CGI [2] Failed to connect to host port 80: Connection refused [2]
HTML (PHP5/CGI) [2] Failed to connect to host port 80: Connection refused [2]
WordPress PHP7/CGI [2] Failed to connect to host port 80: Connection refused [2]
HTML (PHP7/CGI) [2] Failed to connect to host port 80: Connection refused [2]

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

関連記事

BLOG

UPDATE