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
1k
カンムにおけるプロダクトセキュリティのこれまでとこれから
summerwind
1
2.5k
Sharing test cases of internet protocols with Go and OCI Artifacts
summerwind
0
900
Using Thanos as a long-term storage for your Prometheus metrics
summerwind
1
12k
Using Kubernetes as a datastore for SPIRE
summerwind
1
1k
Whitebox Controller
summerwind
5
1.7k
Managing Kubernetes manifests with Spruce
summerwind
2
4.1k
Understanding HTTP/2 prioritization
summerwind
16
6k
HTTP/2 Deep Dive: Priority & Server Push
summerwind
17
3.4k
Other Decks in Technology
See All in Technology
株式会社EventHub・エンジニア採用資料
eventhub
0
2.9k
DevRelの始め方
moongift
PRO
1
390
エンジニア視点で見る、 組織で運用されるデザインシステムにするには
shunya078
1
310
プロダクトエンジニアを支えるための開発生産性向上施策
tsukakei
0
140
AI活用したくてもできなかった不動産SaaSの今とこれから
nealle
0
330
AIを活用した柔軟かつ効率的な社内リソース検索への取り組み
cygames
0
170
「認証認可」という体験をデザインする ~Nekko Cloud認証認可基盤計画
logica0419
2
430
グイグイ系QAマネージャーの仕事
sadonosake
0
320
eBPFのこれまでとこれから
yutarohayakawa
9
3.2k
たった1人からはじめる【Agile Community of Practice】~ソース原理とFearless Changeを添えて~
ktc_corporate_it
1
470
不動産 x AIことはじめ~データの真価を拓くために
estie
0
110
開発生産性を始める前に開発チームができること / optim-improve-development-productivity.pdf
optim
0
110
Featured
See All Featured
Producing Creativity
orderedlist
PRO
340
39k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
29
2.6k
In The Pink: A Labor of Love
frogandcode
139
22k
The MySQL Ecosystem @ GitHub 2015
samlambert
250
12k
Optimizing for Happiness
mojombo
375
69k
Facilitating Awesome Meetings
lara
49
5.9k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
23
1.7k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
0
100
A Modern Web Designer's Workflow
chriscoyier
691
190k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
230
17k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
227
52k
Infographics Made Easy
chrislema
239
18k
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 :-)