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 Worker x Momento でリージョンと戦う
Search
中川 聡也
December 17, 2023
Programming
0
820
Cloudflare Worker x Momento でリージョンと戦う
Cloudflare Meet-up Tokyo Vol.3で発表した資料です
https://cfm-cts.connpass.com/event/303684/
中川 聡也
December 17, 2023
Tweet
Share
More Decks by 中川 聡也
See All by 中川 聡也
Cloudflare Pagesのサイトを NotebookLMから読みやすくする Cloudflare Meet-up Tokyo Vol.7
xiombatsg
0
130
Vue.js_好きに捧ぐ Nuxt Hub で簡単に始めるCloudflare
xiombatsg
1
230
Cloudflare Workers でWebGPUと戯れる
xiombatsg
0
200
受託開発でGitLab CI を活用していく
xiombatsg
1
550
Webサービス開発でのPostman活用方法
xiombatsg
0
250
OCHa Cafe Season7をふりかえって
xiombatsg
0
290
Other Decks in Programming
See All in Programming
Code smarter, not harder - How AI Coding Tools Boost Your Productivity | Webinar 2025
danielsogl
0
120
PHPバージョンアップから始めるOSSコントリビュート / how2oss-contribute
dmnlk
1
1k
php-fpm がリクエスト処理する仕組みを追う / Tracing-How-php-fpm-Handles-Requests
shin1x1
5
2.9k
5年間継続して開発した自作OSSの記録
bebeji_nappa
0
180
英語 × の私が、生成AIの力を借りて、OSSに初コントリビュートした話
personabb
0
190
フロントエンドテストの育て方
quramy
11
2.9k
新しいPHP拡張モジュールインストール方法「PHP Installer for Extensions (PIE)」を使ってみよう!
cocoeyes02
0
350
Signal-Based Data FetchingWith the New httpResource
manfredsteyer
PRO
0
160
AI時代の開発者評価について
ayumuu
0
110
これだけは知っておきたいクラス設計の基礎知識 version 2
masuda220
PRO
24
6.2k
Chrome Extension Techniques from Hell
moznion
1
160
ベクトル検索システムの気持ち
monochromegane
31
9.9k
Featured
See All Featured
4 Signs Your Business is Dying
shpigford
183
22k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
8
650
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
Speed Design
sergeychernyshev
29
880
Designing for humans not robots
tammielis
252
25k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
34
2.2k
Why Our Code Smells
bkeepers
PRO
336
57k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2k
Building Adaptive Systems
keathley
41
2.5k
We Have a Design System, Now What?
morganepeng
52
7.5k
Building a Modern Day E-commerce SEO Strategy
aleyda
40
7.2k
Transcript
Cloudflare Meet-up Tokyo Vol.3 Cloudflare Worker x Momento でリージョンと戦う 2023/12/18
株式会社Future Techno Developers 中川 聡也
謝辞 本日のLTの機会をいただき、ありがとうございます。 まず初めに、主催者の皆様、そして参加者の皆様に 心から感謝申し上げます。 1
サーバーレス:Cloudflare/Momento ゲーム‧アプリ:IGDA Japan / Japan Android Group Cloud Native:OCha Cafe!
まずは⾃⼰紹介 @xiombatsg 2 中川 聡也|Satoya Nakagawa 何をしている⼈? 商品開発をしているお客様を技術⾯でご⽀援 チーム構築のご⽀援(Platform Engineer,SRE…) どんなジャンル? ゲーム/Webサービス/CG/組み込み/etc… どんなコミュニティに顔を出している? Zenn: https://zenn.dev/nakagawa_satoya
事業紹介 3 プロジェクト⽀援事業 Webサイト運営事業 ソフトウェア開発事業 Web診断事業 当社サービス 代理店‧顧客ご紹介企業様 お客様 保守担当メンバー‧パートナー
弊社は「ソフトウェア商品開発をサポートする」企業です
今⽇話すこと アジェンダ 4 実験コードを書いてアップする予定でしたが、間に合いませんでした。 あらかじめご了承ください。 01 リージョンはいやだ 02 Cloudflare Workerはリージョンがない
03 Momento Cacheは良いぞ 04 オリジン繋いでみる(ブログ⾒て!) 05 速度測ってみる(ブログ⾒て!)
突然ですが、 みなさんリージョン好きですか?
私は嫌いです
リージョンのイメージ(私の) 1. ユーザーはリージョンにアクセスする 2. リージョンごとにインスタンスをおかない といけない 3. ネットワーク経路的に近いところと遠いと ころがある 7
リージョン= 世界中のデータセンター
ap-northeast-1 以外遠くない? ※AWS 8 海外ユーザーとか普通に200ms 超えてくるし 50~100ms以下にしたいんだけど できない ユーザー多いところに置くのは いいけど、コスト⾟いよ
ap-northeast-1 以外遠くない? ※AWS 9 ⽇本からどうやって速 度の評価するのよ 複数のリージョン管理したくな い
本音 遠いリージョンをなんと かしたい
Cloudflare Workerに リージョンはない どこにいても—1つのネット ワーク Cloudflareグローバルネットワークはすべてのデータセ ンターですべてのサービスを実⾏しており、お客様の⽴ 地を問わず(シカゴでもケープタウンでも)均⼀な利⽤ 体験が得られます。つまり、お客様のトラフィックはす べてソースに最も近いデータセンターで処理され、バッ
クホーリングやパフォーマンストレードオフが発⽣しま せん。また、シングルパス検査を採⽤し、セキュリティ を合理化、内蔵しています。 ※公式 から抜粋 11
Cloudflareならリージョン意識しなくてもいいんじゃ 12 リージョンないならこ れに全部載せたい! しかも安い!
と思ったけど 現実は⽢くない
真実 14 オリジンや外部サービ スと結局繋ぐよなぁ 安定性はどうなんだっ け?
真実 15 Smart Routingに期待 でもどうなん? (未評価) エンタープライズ⾼い 安く⾏きたい
SmartRouting っぽいものを⾃作する!
memento があるじゃないか momentoは⼩板橋さんの資料が分かりやすい ※参考 https://speakerdeck.com/yoshiitaka/11shi-dian-momento-gai-yao-and-zui-xin-qing-bao
memento は実装が簡単
None
None
でも、リージョンはあるよ リージョンはあるけど、課⾦が通信量のみに課⾦されるので 問題ない。とりあえず全リージョン作ろう ※リージョン少ないけどエリカさんに⾔えば増やしてもらえる⼤丈夫
じゃぁ、Cache APIとかでいいんじゃない? リージョンはあるけど、課⾦が通信量のみに課⾦されるので 問題ない。とりあえず全リージョン作ろう ※リージョン少ないけどエリカさんに⾔えば増やしてもらえる⼤丈夫
繋いでみた 実験コードを書いてアップする予定でしたが、間に合いませんでした。 あらかじめご了承ください。
繋ぐイメージ Cloudflare とオリジンの間にmomentoをおく ※HyperDriveっぽくしたい
処理フロー(Getリクエスト)
処理フロー(POSTリクエスト
Worker でリージョンを判別する Worker に来るリクエストヘッダに⼊っているCountry Codeを⾒て、近いリージョンを選択する
Country Codeから リージョンへの対応表の作成 良い⽅法が思い浮かばないですが、こちらの情報をみて対応 表を作る※海底ケーブルは意識したほうがいいかも?
その他詳細はブログにて 実験コードを書いてアップする予定でしたが、間に合いませんでした。 あらかじめご了承ください。
速度を測る 実験コードを書いてアップする予定でしたが、間に合いませんでした。 あらかじめご了承ください。
Postman Monitorで計測しました(します) Postman Monitorはリージョンがあるので、海外アクセス からの速度評価ぐらいなら対応できそう
ちなみに Asian Pacific がシンガポールなので、⽇本国内向けには速 度評価としては使えなさそう
その他詳細はブログにて 実験コードを書いてアップする予定でしたが、間に合いませんでした。 あらかじめご了承ください。
今後 実験コードを書いてアップする予定でしたが、間に合いませんでした。 あらかじめご了承ください。
こういったことがやりたい 今後 35 01 Momento Cacheのリージョンをなんとかしたい 02 単純なAPI以外も対応したい 03 作ったものをサービスにアドオンしたい
ご清聴ありがとうございました
None