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 Server Push Considered Harmful
Search
Moto Ishizawa
April 14, 2015
Technology
1
2k
HTTP/2 Server Push Considered Harmful
Moto Ishizawa
April 14, 2015
Tweet
Share
More Decks by Moto Ishizawa
See All by Moto Ishizawa
LLM エージェントを使った実験
summerwind
0
1.1k
カンムにおけるプロダクトセキュリティのこれまでとこれから
summerwind
1
2.7k
Sharing test cases of internet protocols with Go and OCI Artifacts
summerwind
0
1k
Using Thanos as a long-term storage for your Prometheus metrics
summerwind
1
12k
Using Kubernetes as a datastore for SPIRE
summerwind
1
1.1k
Whitebox Controller
summerwind
5
1.7k
Managing Kubernetes manifests with Spruce
summerwind
2
4.2k
Understanding HTTP/2 prioritization
summerwind
16
6.1k
HTTP/2 Deep Dive: Priority & Server Push
summerwind
17
3.4k
Other Decks in Technology
See All in Technology
Cloud Spanner 導入で実現した快適な開発と運用について
colopl
1
620
『衛星データ利用の方々にとって近いようで触れる機会のなさそうな小話 ~ 衛星搭載ソフトウェアと衛星運用ソフトウェア (実物) を動かしながらわいわいする編 ~』 @日本衛星データコミニティ勉強会
meltingrabbit
0
140
RSNA2024振り返り
nanachi
0
580
Oracle Cloud Infrastructure:2025年2月度サービス・アップデート
oracle4engineer
PRO
1
210
次世代KYC活動報告 / 20250219-BizDay17-KYC-nextgen
oidfj
0
250
開発スピードは上がっている…品質はどうする? スピードと品質を両立させるためのプロダクト開発の進め方とは #DevSumi #DevSumiB / Agile And Quality
nihonbuson
2
2.9k
ハッキングの世界に迫る~攻撃者の思考で考えるセキュリティ~
nomizone
13
5.2k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
6
57k
バックエンドエンジニアのためのフロントエンド入門 #devsumiC
panda_program
18
7.5k
クラウドサービス事業者におけるOSS
tagomoris
1
710
管理者しか知らないOutlookの裏側のAIを覗く#AzureTravelers
hirotomotaguchi
2
390
MC906491 を見据えた Microsoft Entra Connect アップグレード対応
tamaiyutaro
1
540
Featured
See All Featured
The Invisible Side of Design
smashingmag
299
50k
Visualization
eitanlees
146
15k
Fireside Chat
paigeccino
34
3.2k
A better future with KSS
kneath
238
17k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
Done Done
chrislema
182
16k
Testing 201, or: Great Expectations
jmmastey
42
7.2k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Learning to Love Humans: Emotional Interface Design
aarron
273
40k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
The Language of Interfaces
destraynor
156
24k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
Transcript
HTTP/2 Server Push ʹؔ͢ΔҰߟ
Moto Ishizawa (@summerwind)
Ծઆ HTTP/2 ͷ Server Push Λͬͯɺ Above the fold ͷϦιʔεΛϓογϡͨ͠Β
ϨϯμϦϯά͕͘ͳΔͷͰʁ
ݕূϖʔδ
ςετڥ αʔόʔ • CentOS 7.0 • H2O (1.1.2-alpha1) • Nginx
(1.7.11) ΫϥΠΞϯτ • Chrome Canary (44.0.2364.0) ωοτϫʔΫ • Uplink delay: 100ms • Downlink delay: 100ms
HTTP/2 ը૾ͷಡΈࠐΈ͔֬ʹ͘ͳ͍ͬͯΔ Above the fold ͷϦιʔεΛαʔόʔϓογϡ͢Δ HTTP/2 (Pushed above the
fold)
HTTP/2 JS ͕ϨϯμϦϯάΛϒϩοΫ͍ͯ͠Δ Above the fold ͷϦιʔεΛαʔόʔϓογϡ͢Δ HTTP/2 (Pushed above
the fold)
HTTP/2 DOM ߏஙλΠϛϯά͕վળ JavaScript Λαʔόʔϓογϡ͢Δ HTTP/2 (Pushed JavaScript)
HTTP/2 CSS ͕ϨϯμϦϯάΛϒϩοΫ͍ͯ͠Δ JavaScript Λαʔόʔϓογϡ͢Δ HTTP/2 (Pushed JavaScript)
HTTP/2 (Pushed CSS & JavaScript) DOM ߏஙλΠϛϯά͕͞Βʹվળ CSS ͱ JavaScript
Λαʔόʔϓογϡ͢Δ HTTP/2
HTTP/2 (Pushed CSS & JavaScript & Above the fold) ͋Εɺվળ͞Ε͍ͯͳ͍…
શ෦αʔόʔϓογϡ͢Δ HTTP/2
HTTP/2 (Pushed CSS & JavaScript & Above the fold) ͦͦ
Chrome ͕ࢦఆ͢Δ Priority ͕ߟྀ͞Ε͍ͯͳ͍…? શ෦αʔόʔϓογϡ͢Δ HTTP/2
HTTP/1.1 HTTP/2 vs HTTP/1.1 HTTP/2 HTTP/1.1 ͷํ͕ DOM ߏஙλΠϛϯά͕͍
nghttpx H2O vs nghttpx H2O ϓογϡ͠ͳͯ͘ DOM ͷߏஙλΠϛϯά͕͍
nghttpx H2O vs nghttpx H2O CSSɺJavaScriptɺը૾ͷॱ൪ʹసૹ͞Ε͍ͯΔ
nghttpx nghttpx Ͱ Above the fold ͷϦιʔεΛαʔόʔϓογϡ͢Δ Ұ൪࠷ޙʹαʔόʔϓογϡͷ͕సૹ͞Ε͍ͯΔ nghttpx (Pushed
Above the fold)
·ͱΊ • Above the fold ͷϦιʔεΛϓογϡͯ͘͠ͳΒͳ͍ • ϒϥβ૬खͷ߹ϨϯμϦϯάͷ͜ͱΛߟྀͯ͋͛͠Δඞཁ͕͋Δ • HTTP/2
Ͱαʔόʔͷ࣮࣍ୈͰɺϨϯμϦϯάύϑΥʔϚϯεมΘͬͯ͘Δ • nghttp2 ͷεέδϡʔϥʔϒϥβͱ૬ੑ͕ྑ͍ • H2O ͷεέδϡʔϥʔվળͷ༨͕͋Δ͔ • ͳΜͰαʔόʔϓογϡ͢Ε͘ͳΔɺͱ͍͏ͷͰͳ͍ • ϞόΠϧΞϓϦͱ Web API ͷΈ߹Θͤͷ߹ͬͱΧδϡΞϧʹ͑ͦ͏
Thank you :-)