Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
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
460
PHPを少しでも早く_条件はあるよ_.pdf
tsuyoshi
0
70
スタートアップ6年目のレビュー文化.pdf
tsuyoshi
1
1.9k
PHPを少し深堀るよ.pdf
tsuyoshi
0
360
Reactive_Manifesto.pdf
tsuyoshi
0
61
About_Resilience.pdf
tsuyoshi
1
73
エンジニアの循環ってgood_or_bad_.pdf
tsuyoshi
0
1.2k
スタートアップしてからの失敗の数々
tsuyoshi
0
2.4k
スタートアップエンジニアの役割
tsuyoshi
0
510
Other Decks in Science
See All in Science
論文紹介 音源分離:SCNET SPARSE COMPRESSION NETWORK FOR MUSIC SOURCE SEPARATION
kenmatsu4
0
310
研究って何だっけ / What is Research?
ks91
PRO
1
120
学術講演会中央大学学員会府中支部
tagtag
0
300
機械学習 - K近傍法 & 機械学習のお作法
trycycle
PRO
0
1.2k
Trend Classification of InSAR Displacement Time Series Using SAE–CNN
satai
4
630
Explanatory material
yuki1986
0
400
生成AIと学ぶPythonデータ分析再入門-Pythonによるクラスタリング・可視化をサクサク実施-
datascientistsociety
PRO
4
1.8k
CV_5_3dVision
hachama
0
150
My Favourite Book in 2024: Get Rid of Your Japanese Accent
lagenorhynque
1
110
データベース11: 正規化(1/2) - 望ましくない関係スキーマ
trycycle
PRO
0
940
データマイニング - グラフ構造の諸指標
trycycle
PRO
0
170
生成検索エンジン最適化に関する研究の紹介
ynakano
2
1.3k
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.2k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
Visualization
eitanlees
148
16k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
How to train your dragon (web standard)
notwaldorf
96
6.2k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
ReactJS: Keep Simple. Everything can be a component!
pedronauck
667
120k
Building Applications with DynamoDB
mza
96
6.6k
A better future with KSS
kneath
239
17k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.9k
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 ▫ 原文