JavaScriptを有効にしてください

H2OによるHTTP2の検証をしてみた。本当に早いのか?

 ·  ☕ 2 分で読めます

今更ながら HTTP2 の検証をしてみたのでその結果でも書いておきます。

検証に使用した docker image はこちらです。

検証環境

AUTOMATED BUILD なので、Dockerfile 見ればわかる気がしなくもないけど一応書いておきますね。

HTTPD : H2O

余談ですが、ちょうど検証中に nginx が HTTP2 に対応したというニュースがでてきたりと、なかなか悲しかったっす。

検証準備

docker run -p 80:80 -p 443:443 bootjp/h2o-docker:imageTest

とかで docker run してください。OSX とかの OS で Docke is 何って人はこちらの記事を参考に

Browser http://{docker ip address}/test.html is HTTP 1.1

Browser https://{docker ip address}/test.html is HTTP 2

こんな感じで https かどうかで切り替わります。

また、ブラウザ側のキャッシュはオフにしてください。

firefox about:config

browser.cache.memory.enable;false

browser.cache.disk.enable;false

Chrome Debeloper tool -> Network tab

☑ disable chache ちなみに証明書はオレオレ証明書なので警告出ます。

外部との通信はないですが、気になる方は許可しないでください。

HTTP2 は本当に早いのか!?

今回自分が出した結論からいくとまだわからんす。

その結論に至った経緯としては、firefox においては HTTP1.1 のほうがはやいですよね。

Chrome においては HTTP2 のほうが早かったです。

これに関しては画像を踏まえていきますね。

Firefox の場合

Firefox HTTP 1.1 Total load 0.42 sec FirefoxHttp1.1

Firefox HTTP 2 Total load 1.37 sec

Firefox HTTP2

ぐぬぬ…、実際に試してみていただくとわかりますが、Firefox で HTTP2 の場合は描画がかなり遅いです。

Google Chrome の場合

Google Chrome HTTP 1.1 Total load 801ms

Chrome_HTTP1.1

Google Chrome HTTP 2 Total load 666ms

Chrome_HTTP2

以上の結果を持って、ブラウザ側に左右されることが大きいというのが自分の結論となります。

ご指摘など有りましたら是非お願い致します!

***

共有

bootjp / ぶーと
著者
bootjp / ぶーと
ミドルウェアエンジニア / 7年後に分散データベース研究の世界に貢献することを目指して


目次