Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20181017_spa_ssr.pdf
Search
ozaki25
October 17, 2018
Technology
0
35
20181017_spa_ssr.pdf
ozaki25
October 17, 2018
Tweet
Share
More Decks by ozaki25
See All by ozaki25
20210526_a11y.pdf
ozaki25
0
190
20210525_react_next.pdf
ozaki25
0
150
Webフロントエンドはなぜ複雑なのか
ozaki25
1
140
utility first css
ozaki25
0
110
20201225_how_to_learn_technology.pdf
ozaki25
0
160
20201124_blitz.pdf
ozaki25
0
98
20200727_liff_app.pdf
ozaki25
1
650
20200721_web_vitals.pdf
ozaki25
0
110
20200624_web_otp_api.pdf
ozaki25
1
140
Other Decks in Technology
See All in Technology
AWSを使う上で最低限知っておきたいセキュリティ研修を社内で実施した話 ~みんなでやるセキュリティ~
maimyyym
2
220
「Managed Instances」と「durable functions」で広がるAWS Lambdaのユースケース
lamaglama39
0
280
第4回 「メタデータ通り」 リアル開催
datayokocho
0
120
Debugging Edge AI on Zephyr and Lessons Learned
iotengineer22
0
140
手動から自動へ、そしてその先へ
moritamasami
0
290
Overture Maps Foundationの3年を振り返る
moritoru
0
160
【pmconf2025】PdMの「責任感」がチームを弱くする?「分業型」から全員がユーザー価値に本気で向き合う「共創型開発チーム」への変遷
toshimasa012345
0
280
Haskell を武器にして挑む競技プログラミング ─ 操作的思考から意味モデル思考へ
naoya
6
1.2k
AWS Trainium3 をちょっと身近に感じたい
bigmuramura
1
130
Reinforcement Fine-tuning 基礎〜実践まで
ch6noota
0
160
チーリンについて
hirotomotaguchi
5
1.4k
非CUDAの悲哀 〜Claude Code と挑んだ image to 3D “Hunyuan3D”を EVO-X2(Ryzen AI Max+395)で動作させるチャレンジ〜
hawkymisc
1
160
Featured
See All Featured
How to train your dragon (web standard)
notwaldorf
97
6.4k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
25
1.6k
Learning to Love Humans: Emotional Interface Design
aarron
274
41k
Docker and Python
trallard
47
3.7k
Building Adaptive Systems
keathley
44
2.9k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
12
970
Practical Orchestrator
shlominoach
190
11k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.5k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Site-Speed That Sticks
csswizardry
13
990
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
Fireside Chat
paigeccino
41
3.7k
Transcript
41"Ͱ443͢Δ
41"ͱԿͷུশͰ͠ΐ͏͔
41"ͱԿͷུশͰ͠ΐ͏͔ 㱺4JOHMF1BHF"QQMJDBUJPO
443ͱԿͷུশͰ͠ΐ͏͔
443ͱԿͷུশͰ͠ΐ͏͔ 㱺4FSWFS4JEF3FOEFSJOH
ͱ͍͏༁ͰࠓͷςʔϚ ʮ4JOHMF1BHF"QQMJDBUJPOͰ 4FSWFS4JEF3FOEFSJOH͢Δʯ Ͱ͢
ࠓͷΰʔϧ w ϑϩϯτΤϯυͷจ຺Ͱʮ443ʯͱݴΘΕͨ࣌ʹ ʮ͋͊͋Εͷ͜ͱͶʯͱࢥ͑ΔΑ͏ʹͳΔ w ͳͥ41"Ͱ443Λ͢Δͷ͔ཧ༝Λཧղ͢Δ
࣍ w ୈҰ෦ w 41"ʹ͍ͭͯ w ୈೋ෦ w 443ʹ͍ͭͯ
ୈҰ෦ɿ41"ʹ͍ͭͯ
41"ʹ͍ͭͯ 41"ͱ 41"ͱඇ41"ͷॲཧͷྲྀΕ ΫϥΠΞϯταΠυʹ͓͚ΔύϑΥʔϚϯεࢦඪ 41"·ͱΊ
41"ͱ
41"ͱ w 4JOHMF1BHF"QQMJDBUJPOͷུ w 8FCϖʔδ+BWB4DSJQUΛ͏ͱಈతͳ)5.-ͷॻ͖͕͑Ͱ ͖Δ w ϖʔδભҠؚΊ)5.-ͷߏஙΛશͯ+BWB4DSJQUͰߦ͏͜ͱͰ 69Λ্ͤ͞Δ
41"ͱඇ41"ͷॲཧͷྲྀΕ
ඇ41"ͷॲཧͷྲྀΕ w Έͳ͞ΜʹೃછΈਂ͍ํͷύλʔϯ w 4QSJOH#PPU 5IZNFMFBG K2VFSZ w
1MBZ'SBNFXPSL 4DBMB5FNQBMBUF K2VFSZ
ඇ41"ͷॲཧͷྲྀΕ
ඇ41"ͷॲཧͷྲྀΕ
ඇ41"ͷॲཧͷྲྀΕ
ඇ41"ͷॲཧͷྲྀΕ
ඇ41"ͷॲཧͷྲྀΕ
ඇ41"ͷॲཧͷྲྀΕ
ඇ41"ͷॲཧͷྲྀΕ w 5IZNFMFBG+41ͷΑ͏ͳςϯϓϨʔτΤϯδϯͰ)5.-Λߏங͠ +BWB4DSJQUͰಈతͳ)5.-ͷॻ͖͑Λ࣮ݱ͢Δύλʔϯ w ϖʔδભҠ࣌αʔόʹΞΫηε͠)5.-Λऔಘ͢Δ w ϖʔδͰ+BWB4DSJQUͰΠϯλϥΫςΟϒͳॲཧΛ࣮ݱ͢Δ
41"ͷॲཧͷྲྀΕ
41"ͷॲཧͷྲྀΕ
41"ͷॲཧͷྲྀΕ
41"ͷॲཧͷྲྀΕ
41"ͷॲཧͷྲྀΕ ※ϔЄό΄ݐ΅API䌏ͭͼ㳨᭔ᶋݶ๗᭗מΨᤈ͜
41"ͷॲཧͷྲྀΕ w αʔό͔ΒCPEZ͕ۭͬΆͷ)5.-Λऔಘ͠ )5.-ͷߏஙΛશͯ+BWB4DSJQUͰߦ͏ύλʔϯ w ϖʔδભҠ࣌ͷը໘ͷॻ͖͑+BWB4DSJQUͰߦ͏ w ϖʔδͷಈ࡞͚ͩͰͳ͘ϖʔδભҠؚΊͯΠϯλϥΫςΟϒ ͳಈ࡞Λ࣮ݱͰ͖Δ
ΫϥΠΞϯταΠυʹ͓͚ΔύϑΥʔϚϯ εࢦඪ
ϖʔδ͕දࣔ͞ΕΔ·Ͱͷஈ֊ https://havelog.ayumusato.com/develop/performance/e744-performance_metrics.html 'JSTU1BJOU Կ͔͕දࣔ͞Ε࢝Ίͨ࣌ 'JSTU$POUFOUGVM1BJOU ίϯςϯπ͕දࣔ͞Ε࢝Ίͨ࣌ 'JSTU.FBOJOHGVM1BJOU ҙຯͷ͋Δදࣔʹͳͬͨ࣌
5JNFUP*OUFSBDUJWF ૢ࡞͕Մೳʹͳͬͨ࣌
ύϑΥʔϚϯεࢦඪʹ͋ͯΊͯߟ͑Δ w ඇ41"ͷ߹ w )5.-Λฦ٫͞Εͨ࣌Ͱ '$1͕࢝·Γ'.1·Ͱୡ͢Δ w ͦͷޙ+BWB4DSJQUͷಡΈࠐΈ ͕ྃͨ͠λΠϛϯά͕55*
'JSTU.FBOJOHGVM1BJOU ҙຯͷ͋Δදࣔʹͳͬͨ࣌ 5JNFUP*OUFSBDUJWF ૢ࡞͕Մೳʹͳͬͨ࣌
ύϑΥʔϚϯεࢦඪʹ͋ͯΊͯߟ͑Δ w 41"ͷ߹ w )5.-+BWB4DSJQUͰߏங͢ ΔͷͰ'.1+4ͷ࣮ߦ͕ ྃͨ͠ޙʹͳͬͯ͠·͏ w '.1ͱ΄΅ಉ࣌ʹ55*Λܴ͑ Δ
'JSTU.FBOJOHGVM1BJOU ҙຯͷ͋Δදࣔʹͳͬͨ࣌ 5JNFUP*OUFSBDUJWF ૢ࡞͕Մೳʹͳͬͨ࣌
ύϑΥʔϚϯεࢦඪʹ͋ͯΊͯߟ͑Δ w 41"ͷ߹ w )5.-+BWB4DSJQUͰߏங͢ ΔͷͰ'.1+4ͷ࣮ߦ͕ ྃͨ͠ޙʹͳͬͯ͠·͏ w '.1ͱ΄΅ಉ࣌ʹ55*Λܴ͑ Δ
'JSTU.FBOJOHGVM1BJOU ҙຯͷ͋Δදࣔʹͳͬͨ࣌ 5JNFUP*OUFSBDUJWF ૢ࡞͕Մೳʹͳͬͨ࣌ શϖʔδͷॲཧΛؚΉͷͰ +4ϑΝΠϧͷαΠζ͕େ͖͘ͳΓ͕ͪ
ύϑΥʔϚϯεࢦඪʹ͋ͯΊͯߟ͑Δ w 41"ͷ߹ w )5.-+BWB4DSJQUͰߏங͢ ΔͷͰ'.1+4ͷ࣮ߦ͕ ྃͨ͠ޙʹͳͬͯ͠·͏ w '.1ͱ΄΅ಉ࣌ʹ55*Λܴ͑ Δ
'JSTU.FBOJOHGVM1BJOU ҙຯͷ͋Δදࣔʹͳͬͨ࣌ 5JNFUP*OUFSBDUJWF ૢ࡞͕Մೳʹͳͬͨ࣌ ͜ͷ௨৴͕͍ͱ'.1·Ͱͷ ͕ͪ࣌ؒ͘ͳͬͯ͠·͏
41"·ͱΊ
ඇ41"ͱ41"ͷಈ͖Λൺͯ w ϖʔδભҠΛΠϯλϥΫςΟϒʹ࣮ߦͰ͖Δͱ͍͏Ͱ41"ͷํ ͕ύϑΥʔϚϯε্ѹతʹ༏Ґ w ॳظϖʔδͷදࣔʹؔͯ͠'JSTU.FBOJOHGVM1BJOU·Ͱͷ͞ ͱ͍͏ҙຯͰඇ41"ͷํ͕༏Ґ w 㱺41"͍͚ͲॳظදࣔͷύϑΥʔϚϯε͕՝
ୈೋ෦ɿ443ʹ͍ͭͯ
443ʹ͍ͭͯ 443ͱ 443ͷΈ 443ͷॲཧͷྲྀΕ 443ͷϝϦοτɾσϝϦοτ
ؔ࿈ٕज़ 443·ͱΊ
443ͱ
443ͱ w 4FSWFS4JEF3FOEFSJOHͷུ w 41"ͷॳظදࣔͷύϑΥʔϚϯε্ςΫχοΫͷҰͭ w ॳظද͚ࣔͩαʔόαΠυͰϨϯμϦϯά͠ɺ ͦͷޙΫϥΠΞϯταΠυͰϨϯμϦϯά͢Δͱ͍͏ͷ 㱺41"ͱඇ41"ͷ͍͍ͱ͜ͲΓʂ
443ͷΈ
443ͷΈ w 41"ͷॲཧ w )5.-+BWB4DSJQUʹΑͬͯߏ ங͞Ε͍ͯΔ
443ͷΈ w 41"ͷॲཧ w )5.-+BWB4DSJQUʹΑͬͯߏ ங͞Ε͍ͯΔ 㱺+BWB4DSJQUαʔόαΠυͰ ಈ͘ /PEFKT
443ͷΈ w 41"ͷॲཧ w )5.-+BWB4DSJQUʹΑͬͯߏ ங͞Ε͍ͯΔ 㱺+BWB4DSJQUαʔόαΠυ Ͱಈ͘ /PEFKT
㱺αʔόαΠυͰ+4Λಈ͔͠ ͯ)5.-Λߏஙͯ͠͠·͑ʂ
443ͷॲཧͷྲྀΕ
443ͷॲཧͷྲྀΕ
443ͷॲཧͷྲྀΕ
443ͷॲཧͷྲྀΕ 'JSTU.FBOJOHGVM1BJOU ҙຯͷ͋Δදࣔʹͳͬͨ࣌
443ͷॲཧͷྲྀΕ
443ͷॲཧͷྲྀΕ 5JNFUP*OUFSBDUJWF ૢ࡞͕Մೳʹͳͬͨ࣌
443ͷϝϦοτɾσϝϦοτ
443ͷϝϦοτɾσϝϦοτ w ϝϦοτ w 'JSTU.FBOJOHGVM1BJOU·Ͱͷ࣌ؒΛॖͰ͖Δ w σϝϦοτ w ΞʔΩςΫνϟ͕ෳࡶԽ͠։ൃɾϝϯςͷෛՙ্͕͕Δ
ؔ࿈ٕज़
443࣮ݱͷͨΊͷϥΠϒϥϦ w 41"ϑϨʔϜϫʔΫ͝ͱʹϥΠϒϥϦ͕͋Δ w 3FBDU/FYUKT w 7VF/VYUKT w "OHVMBS"OHVMBS6OJWFSTBM
443͚ͩΕྑ͍༁͡Όͳ͍ w 443ύϑΥʔϚϯεվળͷखஈͷҰͭʹ͗͢ͳ͍ w ଞʹ৭Μͳٕज़ཁૉ͕͋ΔͷͰΩʔϫʔυΛฒ͓ͯ͘ w 4FSWJDF8PSLFS w -B[Z-PBEJOH w
$PEF4QMJUJOH w IUUQ
443·ͱΊ
443·ͱΊ w ΞʔΩςΫνϟ͕ෳࡶʹͳΔ͚ͲύϑΥʔϚϯεʹͩ͜ΘΔͨΊ ʹඞཁͳςΫχοΫ w ύϑΥʔϚϯε্ͷͨΊͷςΫχοΫͷҰͭʹա͗ͳ͍ͷͰଞ ͷςΫχοΫซ༻͍ͯ͘͠ͱΑΓྑ͍
%FNP
σϞ w ಉ͡ػೳͰ443͋Γͱͳ͠ͷ41"Λ༻ҙ w ॳظදࣔͷΛൺֱ͢Δ w ܭଌ-JHIUIPVTFΛ͏ https://developers.google.com/web/tools/lighthouse/?hl=ja
σϞ w -JHIUIPVTFͷܭଌ݁Ռ SSRͭ SSR͘Π 'JSTU.FBOJOHGVM1BJOU ͕վળ͍ͯ͠Δʂ
·ͱΊ w 41"ϖʔδભҠ͠ͳ͍ͷͰಈ࡞͕͍ w ͨͩ͠ॳظද͍ࣔ w 443Λ͏ͱॳظදࣔͷ͞ΛվળͰ͖Δ
ࠓͷΰʔϧͷ͓͞Β͍ w 443ͬͯԿ w 41"ͰॳظදࣔͷύϑΥʔϚϯεΛ্ͤ͞ΔςΫχοΫ w ͳͥ41"Ͱ443͢Δͷʁ w 41"ॳظදࣔͷύϑΥʔϚϯε͕՝͔ͩΒ
͋Γ͕ͱ͏͍͟͝·ͨ͠