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
Service Worker
Search
OSCA
July 27, 2018
Technology
1
1.4k
Service Worker
2018年07月28日(金) に開催された「WEBエンジニア勉強会 #08」で Service Worker について発表しました。
OSCA
July 27, 2018
Tweet
Share
More Decks by OSCA
See All by OSCA
人工肉を食べよう / Let's eat fake meat
oscasierra
4
1.2k
WEBサイトを HTTP/2 に移行した話 / HTTP2
oscasierra
1
2.1k
次世代の認証(WebAuthn/FIDO2)について説明を試みる
oscasierra
2
1.4k
WEBサイトが「できた」と安心する前に最終チェックすること
oscasierra
1
1.9k
Growth of Podcast
oscasierra
0
1.3k
AIの知識無しでもAIを活用したQ&Aページを作る方法
oscasierra
1
1.2k
はじめてのサーバレス関数 (WEBエンジニア勉強会 #06)
oscasierra
0
930
みんなテストってどうやってるの?
oscasierra
0
490
HTTPレイヤーで行うパフォーマンスチューニング (WEBエンジニア勉強会 #05)
oscasierra
1
3.1k
Other Decks in Technology
See All in Technology
透過型SMTPプロキシによる送信メールの可観測性向上: Update Edition / Improved observability of outgoing emails with transparent smtp proxy: Update edition
linyows
2
210
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
940
【令和最新版】AWS Direct Connectと愉快なGWたちのおさらい
minorun365
PRO
5
750
AWS Media Services 最新サービスアップデート 2024
eijikominami
0
200
Amazon Personalizeのレコメンドシステム構築、実際何するの?〜大体10分で具体的なイメージをつかむ〜
kniino
1
100
Introduction to Works of ML Engineer in LY Corporation
lycorp_recruit_jp
0
110
[CV勉強会@関東 ECCV2024 読み会] オンラインマッピング x トラッキング MapTracker: Tracking with Strided Memory Fusion for Consistent Vector HD Mapping (Chen+, ECCV24)
abemii
0
220
Adopting Jetpack Compose in Your Existing Project - GDG DevFest Bangkok 2024
akexorcist
0
110
OCI Vault 概要
oracle4engineer
PRO
0
9.7k
AIチャットボット開発への生成AI活用
ryomrt
0
170
テストコード品質を高めるためにMutation Testingライブラリ・Strykerを実戦導入してみた話
ysknsid25
7
2.6k
dev 補講: プロダクトセキュリティ / Product security overview
wa6sn
1
2.3k
Featured
See All Featured
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
44
2.2k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Gamification - CAS2011
davidbonilla
80
5k
RailsConf 2023
tenderlove
29
900
How to train your dragon (web standard)
notwaldorf
88
5.7k
Writing Fast Ruby
sferik
627
61k
BBQ
matthewcrist
85
9.3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
329
21k
Six Lessons from altMBA
skipperchong
27
3.5k
Faster Mobile Websites
deanohume
305
30k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
27
840
Transcript
04$" ᖛ Ұೋࡾ !FOHJOFFS@PTDB 4FSWJDF8PSLFS֓ཁ
ࣗݾհ © OSCA 04$"ᖛ Ұೋࡾ ·ͷ ͔ͣ;Έ 4*FS ܠࣸਅՈ
ʮ8&#ΤϯδχΞษڧձʯΛओ࠵ +BWB 1)1ܥͷ8&#ΤϯδχΞ ਓೳ "* ͷ։ൃͬͯΔ ݸਓͰ714आΓͯ8&#αʔϏεΛӡӦ͢Δͷ͕झຯ ເͷࠃ ెาݍॅΈ !FOHJOFFS@PTDB !PTDBQIPUP!EJTOFZ@PTDB Service Worker
4FSWJDF8PSLFSͱʁ © OSCA Service Worker 8&#ϖʔδͷදࣔॲཧͱผʹɺ όοΫάϥϯυॲཧΛߦ͏ΠϕϯτۦಈͷεΫϦϓτॲཧɻ
4FSWJDF8PSLFSͱʁ © OSCA Service Worker 8&#ϖʔδͷදࣔॲཧͱผʹɺ όοΫάϥϯυॲཧΛߦ͏ΠϕϯτۦಈͷεΫϦϓτॲཧɻ l164)௨zzΩϟογϡzͳͲͷݴ༿ͱҰॹొ͢Δ͕ɺ ͦΕΛࢦ͢ͷͰͳ͘ɺͦΕΒͷϕʔεͱͳ͍ͬͯΔٕज़ɻ
·ͨ l18"zͱ͍͏ݴ༿ͱҰॹʹొ͢Δ͕ɺ 18"ΞϓϦέʔγϣϯΛߏ͢ΔཁૉͷҰͭͰ͋Δɻ 4FSWJDF8PSLFS 164)"1* 'FUDI #BDLHSPVOE4ZOD $BDIF4USBHF 164)௨ ϩʔΧϧΩϟογϡ όοΫάϥϯυಉظ
Ҏલʹ Application Cache ͱ͍͏ͷ͕1ID9;/ Q]VT^9;2YNO`M\X^YPUWYNO`B:J@. Q]VT^9>7KJ@23?9;/ ͦͦͷܦҢ +,-&"!++
&)#)*(# ' $(%+ 949A5H.0A2=H84H. C @A< >2D:/ F<@[aR_\Z`BQ]VT^MSbWac`?6J E5 92@235 LKJG3BAID9;/ © OSCA Service Worker
ͦͦͷܦҢ ʮΩϟογϡʯʹٻΊΒΕΔ༷Λ࠶ཧ͠ͳ͓͠ɺඞཁͳ
ػೳΛ"1*ׂͨ͠ͱ͜Ζɺʮ'FUDI"1*ʯʮ$BDIF 4USBHF"1*ʯʮ4FSWJDF8PSLFSʯͷ͕ͭੜ͠·ͨ͠ɻ © OSCA Service Worker ػೳͱͯ͠Γग़͞Εͨ 4FSWJDF8PSLFSɺΩϟογϡ Ҏ֎ͷ༻్Ͱͷར༻ظ͞Ε͍ͯΔɻ
ରԠϒϥβ © OSCA Service Worker
8&#αΠτͷදࣔͱಉ࣌ʹɺ๚ऀͷϒϥβʹɺ +BWB4DSJQUΛ༻͍ͯ 4FSWJDF8PSLFSΛΠϯετʔϧ͢Δɻ ͢Δͱ8&#αΠτΛΕͨͱͯ͠ɺ όοΫάϥϯυͰॲཧΛಈ͔͢͜ͱ͕Ͱ͖Δɻ ˞ҙ˞ 4FSWJDF8PSLFSΛར༻͢Δ8&#αΠτɺ )5514ͷαΠτͰ͋Δඞཁ͕͋Δɻ ͲͷΑ͏ʹಈ͔͢ͷ͔ʁ ©
OSCA Service Worker
4FSWJDF8PSLFSͷΠϯετʔϧʹ͍ͭͯઆ໌͠·ͨ͠ɻ NJO ϥΠϒίʔσΟϯά © OSCA Service Worker
σϞͷϑΝΠϧߏ © OSCA Service Worker JOEFYIUNM ๚ऀ͕๚ΕΔϖʔδɻ ͜ͷϖʔδͷॲཧͰ 4FSWJDF8PSLFSΛΠϯετʔϧ͢Δ
TXKT 4FSWJDF8PSLFSͷॲཧΛهड़͢Δ +BWB4DSJQUϑΝΠϧɻ ϒϥβʹΠϯετʔϧ͞ΕΔɻ
࣍ͷΑ͏ͳ+BWB4DSJQUͷهड़Ͱɺ8&#αΠτͷ๚ऀͷϒ ϥβʹɺ4FSWJDF8PSLFSεΫϦϓτΛΠϯετʔϧͰ͖ ·͢ɻ 4FSWJDF8PSLFSͷΠϯετʔϧ OBWJHBUPSTFSWJDF8PSLFSSFHJTUFS TXKT ͋ͱόοΫάϥϯυॲཧΛ TXKTʹهड़͢Δ͚ͩͰ͢ɻ ©
OSCA Service Worker
JOEFYIUNM IUNM IFBE TDSJQU JG TFSWJDF8PSLFSJOOBWJHBUPS \ OBWJHBUPSTFSWJDF8PSLFSSFHJTUFS TXKT`
^ TDSJQU IFBE CPEZ লུ CPEZ IUNM © OSCA Service Worker ˞આ໌ͷͨΊɺΠϯετʔϧͷྫ֎ॲཧ࣮ߦλΠϛϯάΛߟྀ͍ͯ͠·ͤΜɻ࣮࣌ʹҙ͍ͯͩ͘͠͞ɻ
4FSWJDF8PSLFSɺΠϕϯτۦಈͷ࣮ߦڥͰ͢ɻ ԿΒ͔ͷΠϕϯτΛΩοΧέʹॲཧ͕࣮ߦ͞Ε·͢ɻ 4FSWJDF 8PSLFS ͕࣮ߦ͞ΕΔΩοΧέ Πϕϯτ આ໌ JOTUBMM 4FSWJDF8PSLFS͕Πϯετʔϧ͞Εͨࡍ BDUJWBUF
4FSWJDF8PSLFS͕༗ޮʹͳͬͨࡍ GFUDI ωοτϫʔΫʹϦιʔεΛऔಘ͢Δࡍ NFTTBHF ϝοηʔδΛड৴ͨ͠ࡍ © OSCA Service Worker جຊΠϕϯτ
TXKT © OSCA Service Worker TFMGBEE&WFOU-JTUFOFS JOTUBMM GVODUJPO FWFOU
\ DPOTPMFMPH JOTUBMMJOH ^ TFMGBEE&WFOU-JTUFOFS BDUJWBUF GVODUJPO FWFOU \ DPOTPMFMPH BDUJWBUJOH ^ TFMGBEE&WFOU-JTUFOFS GFUDI GVODUJPO FWFOU \ DPOTPMFMPH GFUDIJOH DPOTPMFMPH FWFOUSFRVFTUVSM FWFOUSFRVFTUVSM ^ TFMGBEE&WFOU-JTUFOFS NFTTBHF GVODUJPO FWFOU \ DPOTPMFMPH NFTTBHJOH ^
! 3 164) %HJ:A( 8*-+08DK<M28 '&5' 1+0(/)7$ !
+ FC=>J:LE %?LGIMB(;LJ9L21.-+08DK<M2#@MF04 606,7&5'1+0(/)7$ ! " + © OSCA Service Worker
4FSWJDF8PSLFSͷԠ༻ྫ 164)௨ ϒϥβ͕164)௨Λड͚͚ͭͨ͜ͱΛτϦΨʔʹͯ͠ɺ ॲཧΛ࣮ߦ͢Δ͜ͱ͕Ͱ͖Δɻ
+ © OSCA Service Worker 164)"1*͕ 4FSWJDF8PSLFSʹ QVTIΠϕϯτΛՃͯ͘͠Ε͍ͯΔɻ Πϕϯτ આ໌ JOTUBMM 4FSWJDF8PSLFS͕Πϯετʔϧ͞Εͨࡍ BDUJWBUF 4FSWJDF8PSLFS͕༗ޮʹͳͬͨࡍ GFUDI ωοτϫʔΫʹϦιʔεΛऔಘ͢Δࡍ NFTTBHF ϝοηʔδΛड৴ͨ͠ࡍ QVTI 164)௨Λड৴ͨ͠ࡍ TFMGBEE&WFOU-JTUFOFS QVTI GVODUJPO FWFOU \ 164)௨Λड৴ͨ͠ࡍͷॲཧΛॻ͘ /PSUJGJDBUJPOΛදࣔ͢ΔͳͲ ^
4FSWJDF8PSLFSʹͳ͖ͥ͢ͳͷ͔ʁ © OSCA Service Worker • εϚʔτϑΥϯσεΫτοϓͷΞϓϦέʔγϣϯͱͷ ػೳ͕ࠩຒ·Δ͜ͱ͕ظͰ͖Δɻ •
18" 1SPHSFTTJWF8FC"QQMJDBUJPO ͷొʹΑΓɺ 8&#ͷٕज़ͰεϚʔτϑΥϯσεΫτοϓͷΞϓϦΛ ࣮Ͱ͖ΔΑ͏ʹͳΔɻ
·ͱΊ • 8&#ը໘ͷඳࣸॲཧͱҧ͏ϨϕϧͰɺόοΫάϥϯυ ॲཧ͢ΔΈ͕ 4FSWJDF8PSLFSɻ • ༷ʑͳ "1*ͱΈ߹ΘͤΔ͜ͱͰɺࠓ·Ͱ8&#Ͱ࣮ݱ͕ ͔ͬͨ͠ػೳ 164)௨ͳͲ
͕࣮ݱͰ͖ͭͭ͋Δɻ • ωΠςΟϒΞϓϦͱͷػೳࠩΛຒΊΔ8&#ٕज़ͱͯ͠ɺ ࠓޙͷීٴ͕͞ΕΔɻ © OSCA Service Worker