Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up
for free
HTTPレイヤーで行うパフォーマンスチューニング (WEBエンジニア勉強会 #05)
OSCA
February 02, 2018
Technology
1
1.9k
HTTPレイヤーで行うパフォーマンスチューニング (WEBエンジニア勉強会 #05)
OSCA
February 02, 2018
Tweet
Share
More Decks by OSCA
See All by OSCA
oscasierra
4
610
oscasierra
1
1.6k
oscasierra
2
890
oscasierra
1
1.4k
oscasierra
1
1k
oscasierra
0
430
oscasierra
1
810
oscasierra
0
470
oscasierra
0
320
Other Decks in Technology
See All in Technology
harshbothra
0
110
clustervr
0
140
tnmt
2
200
mii3king
0
420
lmi
2
990
ayanadesu
0
370
masakazu
0
130
clustervr
0
220
iwashi
1
150
buildersbox
0
200
askul
1
190
grapecity_dev
0
130
Featured
See All Featured
jensimmons
207
10k
matthewcrist
73
7.5k
notwaldorf
15
1.8k
searls
205
36k
kneath
294
39k
pauljervisheath
195
15k
eileencodes
113
25k
ufuk
56
5.4k
phodgson
87
3.9k
afnizarnur
176
14k
chriscoyier
498
130k
davidbonilla
70
3.6k
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&#ͷলΤωɾলίετʹߩݙͷ͍͔͕Ͱ͠ΐ͏͔ɻ