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レイヤーで行うパフォーマンスチューニング (WEBエンジニア勉強会 #05)
Search
OSCA
February 02, 2018
Technology
3.5k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
HTTPレイヤーで行うパフォーマンスチューニング (WEBエンジニア勉強会 #05)
OSCA
February 02, 2018
More Decks by OSCA
See All by OSCA
人工肉を食べよう / Let's eat fake meat
oscasierra
4
1.4k
WEBサイトを HTTP/2 に移行した話 / HTTP2
oscasierra
1
2.2k
次世代の認証(WebAuthn/FIDO2)について説明を試みる
oscasierra
2
1.5k
WEBサイトが「できた」と安心する前に最終チェックすること
oscasierra
1
2.1k
Service Worker
oscasierra
1
1.5k
Growth of Podcast
oscasierra
0
1.6k
AIの知識無しでもAIを活用したQ&Aページを作る方法
oscasierra
1
1.2k
はじめてのサーバレス関数 (WEBエンジニア勉強会 #06)
oscasierra
0
1k
みんなテストってどうやってるの?
oscasierra
0
540
Other Decks in Technology
See All in Technology
そのドキュメント、自動化しませんか?
yuksew
1
290
ボーイスカウトルールでメモリやスキルを改善しよう
azukiazusa1
4
1.4k
End-to-Endで考える信頼性 —LINEアプリにおけるクライアント開発×SRE連携の実践
maruloop
4
4.5k
世界、断片、モデル。そして理解
ardbeg1958
1
130
SRE本の知られざる名シーン / The Hidden Gems of Google SRE Book
nari_ex
1
420
壊して学ぶAWS CDK: そのcdk deployで消えるもの、残るもの
k_adachi_01
1
380
SoccerMaster: A Vision Foundation Model for Soccer Understanding
kzykmyzw
0
130
Terraform共通モジュールをチーム横断で“変えられる”運用へ ― リリースと適用の分離
kekke_n
1
3.3k
AI時代の闇と光
tatsuya1970
0
110
なぜ私たちのSREプラクティスはなかなか機能しないのか 〜システムより先に組織を見る〜 / Why our SRE practices aren't really working
vtryo
4
4k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
110k
Type-safe IaC for Dart
coborinai
0
160
Featured
See All Featured
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
370
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4.4k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
220
Unsuck your backbone
ammeep
672
58k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
450
4 Signs Your Business is Dying
shpigford
187
22k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
220
Embracing the Ebb and Flow
colly
88
5.1k
Discover your Explorer Soul
emna__ayadi
2
1.2k
The Curious Case for Waylosing
cassininazir
1
430
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1k
Transcript
04$" ᖛ Ұೋࡾ !FOHJOFFS@PTDB )551ϨΠϠʔͰߦ͏ ύϑΥʔϚϯενϡʔχϯά
© OSCA • ͕ࣗʹɺࣗͰ։ൃ͍ͯ͠Δ8&#αʔϏεͷ ύϑΥʔϚϯενϡʔχϯάΛ͔ͬͨΒɻ (PPHMF1BHF*OTJHIUT ͷείΞΞοϓ • ͳΜͰج൫ٕज़ΛΔ͜ͱ͕ॏཁͰɺ8&#ͷͱ ͳΔ)551ͷࣝͷڞ༗Λ͍ͨ͠ɻ
• લճͷʮ8&#ΤϯδχΞษڧձ ʯͰɺ8PSE1SFTT ͷνϡʔχϯάͷ͕͋ͬͨͷͰɺͦΕͷิͱͯ͠ɻ ࠓ͜ͷςʔϚΛબΜͩཧ༝
ࣗݾհ © OSCA 04$"ᖛ Ұೋࡾ ·ͷ ͔ͣ;Έ ϓϩδΣΫτϚωʔδϟʔ ܠࣸਅՈ
+BWB 1)1ϝΠϯͷ8&#ΤϯδχΞ ਓೳ "* ؔ࿈ͬͯΔ ݸਓͰ714आΓͯ8&#αʔϏεΛӡӦத ເͷࠃ ెาݍॅΈ !FOHJOFFS@PTDB !PTDBQIPUP!EJTOFZ@PTDB
© OSCA • ͡Ίʹ • ίϯςϯπΛϒϥβΩϟογϡͤ͞Δ ֓ཁ • )551௨৴ѹॖΛ͢Δ ֓ཁ
• ίϯςϯπΛϒϥβΩϟογϡͤ͞Δ ࣮ԋ • )551௨৴ѹॖΛ͢Δ ࣮ԋ • "QBDIFIUUQE ʹ͓͚Δઃఆ • OHJOY ʹ͓͚Δઃఆ • ϓϩάϥϜ͔Βར༻͢Δ)551ΫϥΠΞϯτʹ͍ͭͯ • ·ͱΊ ࣍
© OSCA 8&#αΠτΞΫηεʹɺ)551Λར༻͍ͯ͠Δ͜ͱ0,ʁ ॳ৺ऀͷํͷͨΊͷ)551ͷ͓͞Β͍ αʔόʔ ϒϥβ ΫϥΠΞϯτ GET /index.html HTTP/1.1
Host: www.yahoo.co.jp HTTP1.1 200 OK <html> <head>…</head> <body>…</body> </html>
© OSCA ͠Β͘ߋ৽͕ͳͦ͞͏ͳಉҰίϯςϯπͷΞΫηεΛݮ Β͠ɺΩϟογϡΛར༻ͤ͞Δ͜ͱͰදࣔΛߴԽͤ͞Δɻ ίϯςϯπΛϒϥβΩϟογϡͤ͞Δ BCDQOH ͪΐ͏͍ͩʂ BCDQOH ͪΐ͏͍ͩʂ BCDQOH
ͪΐ͏͍ͩʂ BCDQOH ͪΐ͏͍ͩʂ ΫϥΠΞϯτ αʔόʔ
© OSCA ίϯςϯπΛϒϥβΩϟογϡͤ͞Δ BCDQOH ͪΐ͏͍ͩʂ BCDQOH ͪΐ͏͍ͩʂ BCDQOH ͪΐ͏͍ͩʂ BCDQOH
ͪΐ͏͍ͩʂ ݄·Ͱɺ ͜ΕΛͬͯʂ ͠Β͘ߋ৽͕ͳͦ͞͏ͳಉҰίϯςϯπͷΞΫηεΛݮ Β͠ɺΩϟογϡΛར༻ͤ͞Δ͜ͱͰදࣔΛߴԽͤ͞Δɻ ΫϥΠΞϯτ αʔόʔ
© OSCA ίϯςϯπΛϒϥβΩϟογϡͤ͞Δ )551Ϩεϙϯεϔομʹ &YQJSFTϔομΛ༩ͯ͠ɺί ϯςϯπͷΩϟογϡ༗ޮظݶΛΒͤΔɻ αʔόʔ ϒϥβ ΫϥΠΞϯτ GET
/logo.png HTTP/1.1 Host: www.hogemoge.co.jp HTTP1.1 200 OK Expires: Wed, 24 Jan 2018 06:53:29 GMT ( )
© OSCA )5.- $44 +BWB4DSJQU 9.- +40/ͳͲͷςΩετ ϑΝΠϧΛѹॖͯ͠ड৴͢Δɻ ड৴σʔλྔ͕ݮΓɺߴ ʹͳΔɻ
ͨͩ͠ɺΫϥΠΞϯτͱαʔόʔͷ྆ํ͕ɺಉ͡ѹॖܗࣜΛ αϙʔτ͍ͯ͠Δඞཁ͕͋Δɻ ͦ͜Ͱɺ"DDFQU&ODPEJOH ϔομͱ$POUFOU&ODPEJOH ϔομΛར༻͢Δɻ )551௨৴ѹॖΛ͢Δ
© OSCA )551௨৴ѹॖΛ͢Δ αʔόʔ ϒϥβ ΫϥΠΞϯτ GET /index.html HTTP/1.1 Host:
www.hogemoge.co.jp Accept-Encoding: gzip, deflate HTTP1.1 200 OK Content-Encoding: gzip (HTML)
© OSCA ϒϥβΩϟογϡ • NPE@FYQJSFT ϞδϡʔϧͷಡࠐΈ͕ඞཁ • ྫ 1/(ը૾ͷϒϥβΩϟογϡظؒΛϲ݄ʹઃఆ "QBDIFIUUQE
ʹ͓͚Δઃఆ LoadModule expires_module modules/mod_expires.so <ifModule mod_expires.c> ExpiresActive On ExpiresByType image/png "access plus 1 month" </ifModule>
© OSCA )551ѹॖ • H[JQѹॖ NPE@EFGMBUF ϞδϡʔϧͷಡࠐΈ͕ඞཁ • ྫ ςΩετ
)5.- $44 +BWB4DSJQUΛѹॖ͢Δ "QBDIFIUUQE ʹ͓͚Δઃఆ LoadModule deflate_module modules/mod_deflate.so <IfModule mod_deflate.c> AddOutputFilterByType DEFLATE text/html AddOutputFilterByType DEFLATE text/plain AddOutputFilterByType DEFLATE text/css AddOutputFilterByType DEFLATE text/javascript </IfModule>
© OSCA OHJOYʹ͓͚Δઃఆ ϒϥβΩϟογϡ • FYQJSFTͷهड़Λ͢Δ͚ͩɻ • ରΛ֦ுࢠͰߜΔ߹࣍ͷΑ͏ͳهड़ɻ expires 30d;
location ~ .*¥.(html|jpg|gif|png|css|js) { expires 30d; }
© OSCA )551ѹॖ • H[JQ POͱ H[JQ@UZQFT ͷهड़Ͱࢦఆ͢Δɻ OHJOYʹ͓͚Δઃఆ gzip
on; gzip_types text/html text/css text/javascript
© OSCA ϓϩάϥϜதͰ +40/ 9.-ͳͲ"1*Λݺͼग़͢͜ͱ͕ ͋Δͱࢥ͍·͢ɻ ͦͷࡍʹ)551ѹॖͬͯؾʹ͍ͯ͠·͢ ͔ʁ ݴޠඪ४ͷωοτϫʔΫܥΫϥεɾؔΛར༻͢Δ߹ɺࣗ Ͱ
$POUFOU&ODPEJOHϔομΛஅͯ͠ղౚ͠ͳ͍ͱ͍ ͚ͳ͍߹͕ଟ͍͕ɺߴػೳͳ)551$MJFOUϥΠϒϥϦΛར ༻͢Εɺ)551ѹॖͷ෦Ӆṭͯͬͯ͘͠ΕΔ߹͕ ͋Δɻ ϓϩάϥϜ͔Βར༻͢Δ)551ΫϥΠΞϯτ
© OSCA ͓ΘΓʹ • ຊεϥΠυͷͭͷνϡʔχϯάɺ͋ͳͨͷ8&#αʔ Ϗεʹߩݙ͢Δ͚ͩͰͳ͘ɺΠϯλʔωοτͷύ έοτΛݮΒ͢͜ͱ͕Ͱ͖ΔΫϦʔϯͳςΫχοΫͰ͢ɻ • 8&#ͷলΤωɾলίετʹߩݙͷ͍͔͕Ͱ͠ΐ͏͔ɻ