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
Cloudflare Workersの環境を再現することについて
Search
Yusuke Wada
February 26, 2024
Programming
5
840
Cloudflare Workersの環境を再現することについて
Workers Tech Talks in Osaka #1
Feb 26, 2024. Yusuke Wada
Yusuke Wada
February 26, 2024
Tweet
Share
More Decks by Yusuke Wada
See All by Yusuke Wada
JS RPCを理解する
yusukebe
5
520
Honoとhtmx
yusukebe
6
1.5k
Hono v4
yusukebe
11
4.4k
Hono v3 and v4
yusukebe
4
3.5k
The power of Web-standards
yusukebe
4
1.6k
実践エッジユースケース
yusukebe
7
2k
Mojoliciousでつくる! Webアプリ入門
yusukebe
0
370
どこでも動くWebフレームワークをつくる
yusukebe
17
26k
Hono v3 - Do Everything, Run Anywhere, But Small, And Faster
yusukebe
4
740
Other Decks in Programming
See All in Programming
Jetpack for KMP
fornewid
1
290
Advanced App Shrinking Techniques
cbeyls
2
150
I/O Extended Android in Korea 2024 ~ Whats new in Android development tools
pluu
0
250
Javaの現状2024夏 / Java current status 2024 summer
kishida
4
1.4k
AWSでゲームサーバーを運用! Amazon GameLiftのお話
iriikeita
0
200
TiDB Serverless ~理想のServerless DBを考える~
soso_15315
1
160
MIERUNE BBQにおけるユーザー中心設計()
mierune
PRO
1
110
CSC307 Lecture 06
javiergs
PRO
0
360
Mastering Developer Experience: A Roadmap for Success 【開発生産性Conference 2024】
findyinc
1
380
みんなのオブザーバビリティプラットフォームを作ってるんだがパフォーマンスがやばい #mackerelio #srenext
ne_sachirou
0
370
Microservices rules (July 2024) : what good looks like
cer
PRO
0
1.6k
Xcode 16のPreviewModifierと@Previewableを活用した効率的なプレビュー方法の考察
ojun9
2
160
Featured
See All Featured
Speed Design
sergeychernyshev
9
270
Clear Off the Table
cherdarchuk
89
320k
YesSQL, Process and Tooling at Scale
rocio
166
14k
Agile that works and the tools we love
rasmusluckow
325
20k
Atom: Resistance is Futile
akmur
261
25k
Scaling GitHub
holman
458
140k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
245
1.2M
Building Effective Engineering Teams - LeadDev
addyosmani
47
2.2k
Faster Mobile Websites
deanohume
303
30k
Building an army of robots
kneath
301
42k
Six Lessons from altMBA
skipperchong
24
3.2k
Designing with Data
zakiwarfel
96
5k
Transcript
$MPVE fl BSF8PSLFSTͷڥΛ ࠶ݱ͢Δ͜ͱʹ͍ͭͯ 8PSLFST5FDI5BMLTJO0TBLB 'FC :VTVLF8BEB
ࣗݾհ w :VTVLF8BEB w 8FCGSBNFXPSLEFWFMPQFS w %FWFMPQFS"EWPDBUF!$MPVE fl BSF w
#PLFUFDPGPVOEFS w $SFBUPSPG)POP w IUUQTHJUIVCDPNZVTVLFCF
)POPͱʁ w ͲΜͳ+BWB4DSJQUͷϥϯλΠϜͰಈ͘8FCϑϨʔϜϫʔΫ w 'BTU -JHIUXFJHIU 8FCTUBOEBSET w 8PSLTPOʜ w
$MPVE fl BSF8PSLFST1BHFT w %FOP w #VO w /PEFKT w 'BTUMZ$PNQVUF w "84-BNCEB w 7FSDFM w 0UIFST IUUQTIPOPEFW
ࠓ͢͜ͱ w ʮ$MPVE fl BSF8PSLFSTͷڥΛ࠶ݱ͢Δ͜ͱʹ͍ͭͯʯ w Ұൠ։ൃऀ͕ҙࣝ͠ͳ͍͍ͯ͘͜ͱΛؚΈ·͢ w 8SBOHMFS͕উखʹͬͯདྷΔ͜ͱ w
ϑϨʔϜϫʔΫ࡞ऀ͕ߟ͑Ε͍͍͜ͱ w )POPͰͲ͏͍ͯ͠Δ͔ʁ
લఏ8PSLFSTͱ1BHFT w 8PSLFSTͱ1BHFTҰॹʹͳ͍͖ͬͯ·͢ w 1BHFTͰμΠφϛοΫͳ͜ͱΛѻ͏Α͏ʹͳ͖ͬͯͨ w 8PSLFST4JUFT͕EFQSFDBUFEʹͳͬͨ w ʮ8PSLFSTʯͱ͍͏ͷʮ1BHFTؚΉʯ߹͕͋Γ·͢
ڥΛ࠶ݱ͢ΔͱͲ͏خ͍͔͠ w ຊ൪ڥΛ࠶ݱͰ͖ΔˠϩʔΧϧͰ։ൃ͍͢͠ʂςετ͕Ͱ͖Δʂ w ͦͦڥ͕ͳ͍ͱ։ൃͰ͖ͳ͍ˠ։ൃͰ͖Δʂ w ຊ൪ڥͱҧ͏ϩʔΧϧ༻ͷڥ༻ҙͰ͖Δ͔͠Εͳ͍ˠσʔλΛΘ ͚Δ͜ͱ͕Ͱ͖Δʂ
$MPVEGMBSFͷڥͱʁ w ϥϯλΠϜ w ❌/PEFKTɺ/PEFKTͷ"1*Ͱಈ͔ͳ͍ͷ͕͋Δ w ͭ·ΓXPSLFSE w FWBMOFX'VODUJPO͕Ͱ͖ͳ͍ w
#JOEJOHT w ADUYAXBJU6OUJMQBTT5ISPVHI0O&YDFQUJPO w 3FRVFTUDGϓϩύςΟ w 63-1BUUFSOɺDBDIFTͳͲ/PEFKTʹͳ͍"1*
&YQPSUFE)BOEMFSͷܕͰ$MPVEGMBSFಛ༗ͷΦϒδΣΫτ͕Θ͔Δ
SFRVFTU 3FRVFTUVOLOPXO *ODPNJOH3FRVFTU$G1SPQFSUJFTVOLOPXO $MPVE fl BSFಠࣗͷ3FRVFTUΦϒδΣΫτͷϓϩύςΟ
FOWVOLOPXO #JOEJOHT͕ೖͬͯ͘Δ (FOFSJDTͰॻ͍͓ͯ͘ͱศར
DUY&YFDVUJPO$POUFYU XBJU6OUJMϨεϙϯεͷॲཧʹ͔͔ΘΒ࣮ͣߦ͞ΕΔ QBTT5ISPVHI0O&YDFQUJPOΤϥʔ͕ىͬͯ͜ΦϦδϯʹϦΫΤετ͕͍͘
ͭ·Γʜ w ڥΛ࠶ݱ͢Δʹ w GFUDIϋϯυϥʹೖͬͯ͘ΔʮͭʯΛ࠶ݱ͢Δ w SFRVFTUFOWDUY w ϥϯλΠϜͷ"1*Λ$MPVE fl
BSFͷʹ͢Δ w ͭ·ΓXPSLFSE
8SBOHMFSҎ֎Ͱ࠶ݱ͍ͨ͠ w ֤ϑϨʔϜϫʔΫͷ։ൃαʔόʔ w /FYUKT3FNJY4WFMUF,JU"TUSP)POPʜ w ςετ w 7JUFTU+FTUʜ
ݱࡏͷࢼΈ w GFUDIϋϯυϥʹೖͬͯ͘ΔʮͭʯΛ࠶ݱ͢Δ w 8SBOHMFSͷAHFU1MBUGPSN1SPYZA"1* /FX w ϥϯλΠϜͷ"1*Λ$MPVE fl
BSFͷʹ͢Δ w 7JUFͷ3VOUJNF"1* /FX ࠓɺܹΞπ
3FNJYͷ$MPVEGMBSFରԠ ͷWϦϦʔεͰ$MPVE fl BSF1BHFTαϙʔτ͕ൃද͞Εͨ
ͭͷϓϩύςΟ͕औΕΔʂ
આ໌ʹΑΔͱ w $MPVE fl BSFͷXPSLFSE7JUFͷ/PEFKTͱશʹΓ͞Ε͍ͯͨ w 3FNJYϓϥάΠϯͰ$MPVE fl BSF1BHFTαϙʔτΛ͢Δ w
8SBOHMFSͷ/PEFKTͱXPSLFSEΛϓϩΩγ͢Δػೳ HFU1MBUGPSN1SPYZ Λ ͏ w ݱࡏ$MPVE fl BSFνʔϜͱ࿈ܞͯ͠࠷ߴͷମݧΛ3FNJYϢʔβʔʹಧ͚Δ ྗΛ͍ͯ͠Δ w ͍ۙকདྷɺ7JUFͷ৽͍͠ ࣮ݧతͳ 3VOUJNF"1*ΛͬͯΑΓγʔϜϨεʹ౷ ߹ͤ͞Δ͜ͱΛߟ͍͑ͯΔ
HFU1MBUGPSN1SPYZ w ͷXSBOHMFS!ͰHFU#JOEJOHT1SPYZ͔ΒϦωʔϜ͞Εͨ w /PEFKT্Ͱ$MPVE fl BSFͷڥΛΤϛϡϨʔτ͢ΔͨΊʹXPSLFSEΛϓϩΩγ ͢Δ w ࣮ࡍʹ҉తʹXPSLFSFE্ཱ͕͕ͪΔ
w XSBOHMFSUPNMΛಡΜͰ͘ΕΔˡͨͩ͠ຊ൪ͷ1BHFTͰμογϡϘʔυΛ ͏ w ϑϨʔϜϫʔΫͷ։ൃαʔόʔͱςετతͰ͏
͜ͷίʔυ࣮ࡍʹಈ͘
)POPͰͷ׆༻ w )POPͰ1BHFT)POP9ͷ߹7JUFΛ։ൃαʔόʔʹ͏͜ͱΛਪ w !IPOPWJUFEFWTFSWFS w ಠࣗͷ։ൃαʔόʔΛఏڙ͢Δ7JUFϓϥάΠϯ w !IPOPOPEFTFSWFSΛ͍ͬͯΔ w
ͦΕʹ͢લͰHFU1MBUGPSN1SPYZ͔Βऔಘͨ͠FOWΛ͍͍ͤ
BEBQUFSΦϓγϣϯͰͰ͖ΔΑ͏ʹͳͬͨ
👍
7JUFͷ3VOUJNF"1* w ʹग़ͨWͰ࣮ݧతʹಋೖ͞Εͨ w 7JUFʹ/PEFKTҎ֎ͷϥϯλΠϜΛ࣋ͬͯ͜ΕΔ৽͍͠"1* w WͰ"1*͕มΘΔՄೳੑ͕͋ΔͷͰ͍᪳ͯ͠Δ͕͍͍ͨ w 3VOUJNFΛ࡞ΔʹͦͷϥϯλΠϜͷFWBM͕ඞཁ w
.JOJ fl BSFXPSLFSFEͩͱ໘ͳͷͰͲ͏ʹ͔͍ͨ͠ w ͜͜ʹ།ҰͷྫˠIUUQTHJUIVCDPNTBQQIJSFEWJUFFOWT
.JOJGMBSFͷ7JUFTUڥ͕ग़ͯΔ ·͍͖ͩΕͯͳ͍ͷͰͦͷ͏ͪ
·ͱΊ w $MPVE fl BSFͷڥΛ࠶ݱ͢Δ͜ͱʹ͍ͭͯ w $MPVE fl BSFಛ༗ͷͭͷϓϩύςΟͱϥϯλΠϜ͕͑Ε͍͍ w
8SBOHMFSͷHFU1MBUGPSN1SPYZͱ7JUFͷ3VOUJNF"1*͕ܹΞπ w ςετͰ͖ΔΑ͏ʹͳ͍ͬͯΔ w $MPVE fl BSFνʔϜɺ7JUFνʔϜɺ֤ϑϨʔϜϫʔΫ͕ؤு͍ͬͯΔʂ
͓ΘΓ