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
7
1k
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
Honoのおもしろいミドルウェアをみてみよう
yusukebe
0
95
MCP with Cloudflare Workers
yusukebe
2
320
Remix on Hono on Cloudflare Workers
yusukebe
3
510
僕がつくった48個のWebサービス達
yusukebe
21
18k
Honoの来た道とこれから
yusukebe
20
5k
JS RPCを理解する
yusukebe
5
770
Honoとhtmx
yusukebe
6
1.9k
Hono v4
yusukebe
11
5.1k
Hono v3 and v4
yusukebe
4
4k
Other Decks in Programming
See All in Programming
Multi Step Form, Decentralized Autonomous Organization
pumpkiinbell
1
550
ASP. NET CoreにおけるWebAPIの最新情報
tomokusaba
0
320
ファインディの テックブログ爆誕までの軌跡
starfish719
2
1k
Grafana Cloudとソラカメ
devoc
0
130
最近のVS Codeで気になるニュース 2025/01
74th
1
250
DROBEの生成AI活用事例 with AWS
ippey
0
120
パスキーのすべて ── 導入・UX設計・実装の紹介 / 20250213 パスキー開発者の集い
kuralab
3
410
Spring gRPC について / About Spring gRPC
mackey0225
0
210
『改訂新版 良いコード/悪いコードで学ぶ設計入門』活用方法−爆速でスキルアップする!効果的な学習アプローチ / effective-learning-of-good-code
minodriven
29
5.1k
Pythonでもちょっとリッチな見た目のアプリを設計してみる
ueponx
1
420
Kanzawa.rbのLT大会を支える技術の裏側を変更する Ruby on Rails + Litestream 編
muryoimpl
0
190
2024年のWebフロントエンドのふりかえりと2025年
sakito
1
210
Featured
See All Featured
Designing Experiences People Love
moore
139
23k
GitHub's CSS Performance
jonrohan
1030
460k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Making Projects Easy
brettharned
116
6k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.4k
For a Future-Friendly Web
brad_frost
176
9.5k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
530
Measuring & Analyzing Core Web Vitals
bluesmoon
6
230
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
Scaling GitHub
holman
459
140k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5.2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
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νʔϜɺ֤ϑϨʔϜϫʔΫ͕ؤு͍ͬͯΔʂ
͓ΘΓ