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.5k
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.3k
WEBサイトを HTTP/2 に移行した話 / HTTP2
oscasierra
1
2.2k
次世代の認証(WebAuthn/FIDO2)について説明を試みる
oscasierra
2
1.4k
WEBサイトが「できた」と安心する前に最終チェックすること
oscasierra
1
2k
Growth of Podcast
oscasierra
0
1.4k
AIの知識無しでもAIを活用したQ&Aページを作る方法
oscasierra
1
1.2k
はじめてのサーバレス関数 (WEBエンジニア勉強会 #06)
oscasierra
0
970
みんなテストってどうやってるの?
oscasierra
0
500
HTTPレイヤーで行うパフォーマンスチューニング (WEBエンジニア勉強会 #05)
oscasierra
1
3.3k
Other Decks in Technology
See All in Technology
メモ整理が苦手な者による頑張らないObsidian活用術
optim
0
150
Railsの限界を超えろ!「家族アルバム みてね」の画像・動画の大規模アップロードを支えるアーキテクチャの変遷
ojima_h
4
520
Microsoft Learn MCP/Fabric データエージェント/Fabric MCP/Copilot Studio-簡単・便利なAIエージェント作ってみた -"Building Simple and Powerful AI Agents with Microsoft Learn MCP, Fabric Data Agent, Fabric MCP, and Copilot Studio"-
reireireijinjin6
1
140
株式会社島津製作所_研究開発(集団協業と知的生産)の現場を支える、OSS知識基盤システムの導入
akahane92
1
1.3k
機械学習を「社会実装」するということ 2025年夏版 / Social Implementation of Machine Learning July 2025 Version
moepy_stats
1
1.4k
Ktor + Google Cloud Tasks/PubSub におけるOTel Messaging計装の実践
sansantech
PRO
1
330
なぜAI時代に 「イベント」を中心に考えるのか? / Why focus on "events" in the age of AI?
ytake
2
800
Vision Language Modelと自動運転AIの最前線_20250730
yuyamaguchi
1
550
クマ×共生 HACKATHON - 熊対策を『特別な行動」から「生活の一部」に -
pharaohkj
0
180
「育てる」サーバーレス 〜チーム開発研修で学んだ、小さく始めて大きく拡張するAWS設計〜
yu_kod
1
180
AI人生苦節10年で会得したAIがやること_人間がやること.pdf
shibuiwilliam
1
210
【2025 Japan AWS Jr. Champions Ignition】点から線、線から面へ〜僕たちが起こすコラボレーション・ムーブメント〜
amixedcolor
1
100
Featured
See All Featured
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
8
390
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
16k
BBQ
matthewcrist
89
9.8k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
126
53k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Site-Speed That Sticks
csswizardry
10
720
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
2.9k
Testing 201, or: Great Expectations
jmmastey
43
7.6k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
21
1.4k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
138
34k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
1k
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