HTTP/2 と HTTP/1.1 のページ読込みスピードを比較

クラウド
クラウド
スポンサーリンク

一般的なWEBページでは、ページを表示する際に、およそ100〜200のリクエストが発生します。現在WEB通信に使われている HTTP/1.1 では、同時に処理できるリクエストは4〜6程度ですが、HTTP/2 では100以上のリクエストを、同時に処理をすることができますので、ページ読込みの高速化が期待できます。そこで今回は、HTTP/2 と HTTP/1.1 のページ読込みスピードを比較してみました。

WEBサーバソフトウェア

HTTP/2 の WEBサーバは、Nghttp2(nghttpd)を使わさせて頂きました。設定手順は「HTTP/2 WEBサーバ設定メモ」をご参照ください。

HTTP/2・・・nghttpd nghttp2/0.7.12-DEV

HTTP/1.1・・・Apache/2.4.6

計測に使った WEBブラウザ

Google Chrome バージョン42 を使い、表示>開発/管理>デベロッパーツール の「Network」を選択して「Load」の値を観測しました。
http2-speed-test-01

HTTP/2 と HTTP/1.1 のページ読込みスピードを比較

期待通り HTTP/2 の方が高速でした。平均値で見た場合 HTTP/2 を使うと、約16% 読込み時間を削減することができます。また、HTTP/1.1 に比べて、HTTP/2 は、ばらつきが小さいので「読込み時間が安定している」とも捉えることができますね。

(単位:秒)HTTP/2HTTP/1.1差異差異率
1回目1.221.45-0.23-16%
2回目1.251.59-0.34-21%
3回目1.241.68-0.44-26%
4回目1.111.39-0.28-20%
5回目1.171.22-0.05-4%
6回目1.221.39-0.17-12%
7回目1.231.28-0.05-4%
8回目1.221.35-0.13-10%
9回目1.131.52-0.39-26%
10回目1.121.30-0.18-14%
平均1.191.42-0.23-16%
中央値1.221.39-0.17-12%
ばらつき0.050.14

見た目では、違いが分からない HTTP/2 と HTTP/1.1 ですが、タイムラインを見ると、HTTP/2 が同時にリクエストを処理している様子や、HTTP/1.1 がリクエスト処理を待っている様子が、よく分かります。

【HTTP/2 のタイムライン】
HTTP/2 のタイムライン

【HTTP/1.1 のタイムライン】
HTTP/1.1 のタイムライン

終わりに

HTTP/2 と HTTP/1.1 の観測結果は、ネットワーク環境や、WEBブラウザによって変わります。ご自分の環境で観測することをオススメします。

コメント

タイトルとURLをコピーしました