$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
HTTP/2.0 入門
Search
tsuyoshi nakamura
September 30, 2016
Science
0
650
HTTP/2.0 入門
HTTP/2.0 入門
tsuyoshi nakamura
September 30, 2016
Tweet
Share
More Decks by tsuyoshi nakamura
See All by tsuyoshi nakamura
社内の勉強会で発表した_output_一部抜粋版_.pdf
tsuyoshi
0
470
PHPを少しでも早く_条件はあるよ_.pdf
tsuyoshi
0
78
スタートアップ6年目のレビュー文化.pdf
tsuyoshi
1
1.9k
PHPを少し深堀るよ.pdf
tsuyoshi
0
370
Reactive_Manifesto.pdf
tsuyoshi
0
69
About_Resilience.pdf
tsuyoshi
1
80
エンジニアの循環ってgood_or_bad_.pdf
tsuyoshi
0
1.2k
スタートアップしてからの失敗の数々
tsuyoshi
0
2.4k
スタートアップエンジニアの役割
tsuyoshi
0
520
Other Decks in Science
See All in Science
データベース15: ビッグデータ時代のデータベース
trycycle
PRO
0
400
データマイニング - ノードの中心性
trycycle
PRO
0
310
イロレーティングを活用した関東大学サッカーの定量的実力評価 / A quantitative performance evaluation of Kanto University Football Association using Elo rating
konakalab
0
130
データベース14: B+木 & ハッシュ索引
trycycle
PRO
0
550
防災デジタル分野での官民共創の取り組み (1)防災DX官民共創をどう進めるか
ditccsugii
0
420
凸最適化からDC最適化まで
santana_hammer
1
330
MCMCのR-hatは分散分析である
moricup
0
520
People who frequently use ChatGPT for writing tasks are accurate and robust detectors of AI-generated text
rudorudo11
0
160
Ignite の1年間の軌跡
ktombow
0
180
データベース11: 正規化(1/2) - 望ましくない関係スキーマ
trycycle
PRO
0
1k
データマイニング - グラフ埋め込み入門
trycycle
PRO
1
120
機械学習 - K近傍法 & 機械学習のお作法
trycycle
PRO
0
1.3k
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Scaling GitHub
holman
464
140k
Optimising Largest Contentful Paint
csswizardry
37
3.5k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.8k
Designing for humans not robots
tammielis
254
26k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
700
Music & Morning Musume
bryan
46
7k
A designer walks into a library…
pauljervisheath
210
24k
RailsConf 2023
tenderlove
30
1.3k
The Cost Of JavaScript in 2023
addyosmani
55
9.3k
4 Signs Your Business is Dying
shpigford
186
22k
Being A Developer After 40
akosma
91
590k
Transcript
2016.09-30 社内勉強会 @nakamura_tsuyo4 HTTP/2 入門
Agenda HTTP/2の内容を見る HTTPの歴史 対応状況 考察 関連情報
History About HTTP 1
History 1996 HTTP/1.0 1991 HTTP/0.9 1999 HTTP/1.1 2015 HTTP/2.0
History 2009年 GoogleからSPDY ◦ SPDY/1 ◦ SPDY/2 ◦ SPDY/3 ◦
SPDY/3.1
SPDYの進化版でHTTP/2の開発 ◦ IETFのHTTPBisのワーキンググルー プが進める ◦ RFC7540としてRFC化 History
HTTPBis Bisってなに... 小ネタ
HTTPBis Bisはラテン語系(french,spanish,)で「繰り返し」 「再び」という意味がある HTTPのsecond version of protocol
ブラウザとWebサーバの 実装によって実現 だからRFCやらIETFというwordがでてくる
HTTP/2 2
About HTTP/2 http://blog.redbox.ne.jp/http2-cdn.html ストリームの多重化
About HTTP/2 ストリームの優先度 ◦ Dependency Weighting ◦ PRIORITY Frame ◦
ブラウザが更新
About HTTP/2 headerの圧縮 ◦ HPACK (RFC7541) ◦ ネットワーク帯域の節約
About HTTP/2 フローの制御 ◦ Stream毎に制御可能 ▫ ひとつのストリームが帯域リソースの占有を防ぐ ▫ 重い動画や画像のダウンロード時にとか
About HTTP/2 サーバプッシュ http://codezine.jp/article/detail/8663?p=2
About HTTP/2 接続 -だいたいALPN- ◦ ALPN ▫ Application-Layer Protocol Negotiation
▫ サーバ側がプロトコルを選択 ◦ NPN ▫ Next Protocol Negotiation ▫ クライアントがプロトコルを選択
Correspondence table Browser and Server 3
対応状況 -ブラウザ- ブラウザ 対応バージョン Chrome 42以上 Firefox 38以上 IE Windows
10上のInternet Explorer 11 ※2016.09.29時点mac chromeの最新は53 ※検索するとほとんどのモダンブラウザであれば対応済みと考えて良さそう ※どのブラウザもTLS拡張(ALPN)が必要
対応状況 -サーバ- サーバ 対応バージョン Nginx 1.9.5以上 Apache 2.4系以上 Tomcat 9以上
※TLS拡張にはOpenSSLの1.0.2が必要
考察 4
効果が薄いパターン ◦ すでに複数ドメインで運用しているサイト ◦ リクエスト数少ないサイト ◦ HTTPSを使ってないサイト
効果が高いパターン ◦ 通信回線が弱いユーザ(mobile含む) ▫ 逆に回線の良いユーザには体感しづらい ◦ そもそもアクセスがおおいサイト ◦ 動画や重い画像を扱ってるサイト ◦
すでにCDNを使っててもCDN屋さんでHTTP2対応さ れてるので活用メリットはある ▫ https://http2.akamai.com/demo ◦ GoogleBotもHTTP2をサポートするらしいのでSEOで プラス効果が期待出来る
関連情報 4
その他 Googleはすでに次の仕様策定中の様子 ▫ QUIC ▫ UDPプロトコルも活用して高速化を目指す HTTP/2 and SPDY indicator
▫ Chrome extension http://www.rfc-editor.org/rfc/rfc7540.txt ▫ 原文