Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Cloudflare Meetup Nagano Vol.3
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Taisei Ito
January 18, 2025
Technology
130
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Cloudflare Meetup Nagano Vol.3
Taisei Ito
January 18, 2025
More Decks by Taisei Ito
See All by Taisei Ito
Grafana Meetup Japan Vol. 6
kaedemalu
1
940
Cloudflare Meetup Nagano Vol.2
kaedemalu
0
2.2k
20220214_Future Tech Night
kaedemalu
0
2.6k
20210910_nyle
kaedemalu
0
1.1k
20210827 Future Tech Night
kaedemalu
0
4.6k
CNDO2021 Open Policy Agent
kaedemalu
1
1.5k
20210210 Terraform meetup ONLINE
kaedemalu
0
710
Future Talk Night 20201118
kaedemalu
0
260
20201114 GCPUG Shonan
kaedemalu
0
520
Other Decks in Technology
See All in Technology
Execution in the Kingdom of Agents: Reflections on Abstraction and Complexity
bcantrill
0
890
生成AIを使って「人が」考える技術 ― AI時代の人機共想と実践ノウハウ|UNITT AC2026
ishiirikie
0
570
ファミコンでPHPを動かす / PHP on the Famicom side b
tomzoh
0
140
「Docker Desktop不要の時代」は 来たのか?
ueponx
0
300
ai_cording_with_k8s_knowledge.pdf
mochizuki875
1
320
しろおびから始める!ログ活用の第一歩
shumei_ito
0
760
分析の民主化を支えるメタデータ整備の実践
kakehashi
PRO
4
1.1k
2026-10-01_MagicPod_QAハーネスエンジニアリングとQA組織の未来像
ynisqa1988
1
570
3つのアプローチで目指す チームを強くするAI駆動開発
thkt
0
140
オブザーバビリティを高める AI エージェント体験を考える / Designing AI Agent Experiences That Enhance Observability
aoto
PRO
2
320
不可逆な意思決定を避けながら10億超の顧客データを AI Ready にするデータ基盤設計
baseballyama
1
220
生成AIと進める探索的データ分析(2026.10.03 第122回Tokyo.R勉強会)
tatamiya
2
1.4k
Featured
See All Featured
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
520
Chasing Engaging Ingredients in Design
codingconduct
0
350
So, you think you're a good person
axbom
PRO
2
2.2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
530
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
2
940
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Sam Torres - BigQuery for SEOs
techseoconnect
PRO
0
570
Side Projects
sachag
456
43k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
360
31k
Music & Morning Musume
bryan
48
7.4k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
320
Transcript
Cloudflare Meetup Nagano Vol.3 2024.01.18 Sat. Taisei Ito kaedemalu 𝕏
kaedemalu
自己紹介 • 伊藤 太斉(Taisei Ito) ◦ @kaedemalu(X, GitHub) ◦ フューチャーアーキテクト株式会社
▪ Technology Innovation Group ▪ シニアコンサルタント ▪ TechBlog Editor ◦ #Terraform #Google Cloud #AWS ◦ 長野県長野市生まれ • Community ◦ GCPUG Shonan Staff • Hobby ◦ サウナ・スキー・カメラ・マラソン(先週ハーフ完走)
結構ネタに悩みました(ここは独り言) • Terraformと絡めたネタは前回やった • Cloudflare自体、仕事で触っているわけではないから そこまでネタとして持っていない • 最近の関心ごと ◦ インフラの運用監視
水曜日になりました
自分が広げられるネタとは • 昨年会社の技術ブログで連載をやりました 参考:https://future-architect.github.io/articles/20240527a/
自分が広げられるネタとは • 昨年会社の技術ブログで連載をやりました
今回のネタ • Workersってどうやって動いているんだろう ◦ PythonをWorkersでどう動かしているか
そもそもWorkersってどうやって動いている? • Chrome V8というJavaScriptエンジンで稼働する ◦ 車のエンジンの気筒数になぞらえた命名 ▪ V8なので相当パワフルに動く、というところから ◦ 強み
▪ コールドスタートな状態であっても5msほどで実行できるほど 高速なスピンアップ ▪ JavaScriptの関数をサンドボックス化し、セキュリティの向上に 寄与している 参考:https://www.cloudflare.com/learning/serverless/glossary/what-is-chrome-v8/
そもそもWorkersってどうやって動いている? • Chrome V8というJavaScriptエンジンで稼働する ◦ 車のエンジンの気筒数になぞらえた命名 ▪ V8なので相当パワフルに動く、というところから ◦ 強み
▪ コールドスタートな状態であっても5msほどで実行できるほど 高速なスピンアップ ▪ JavaScriptの関数をサンドボックス化 し、セキュリティの向上に 寄与している 参考:https://www.cloudflare.com/learning/serverless/glossary/what-is-chrome-v8/
サンドボックス化とは • Chrome V8における重要な機能の一つである • JavaScriptの関数それぞれが個別に実行され、かつ影響を与えないことを 保証している ◦ 他の関数によってパフォーマンスの低下も起こさない 参考・引用:
https://www.cloudflare.com/learning/serverless/glossary/what-is-chrome-v8/
ウェブで扱える言語 • HTML • CSS • JavaScript
Cloudflare Workersで実行可能な言語 • HTML • CSS • JavaScript • Python
• Go • Rust • C, etc…
WebAssembly(WASM)という技術 • 昨今のウェブブラウザで実行できるバイナリのフォーマット(仕様) • Rust, C/C++などの言語をコンパイルして実行することができる ◦ 上記の言語をウェブ上で動かすことができる ◦ JavaScriptと並行して動かすように設計されている
• JavaScriptの「置き換え」ではなく「補強」 参考・引用: https://developer.mozilla.org/ja/docs/WebAssembly
なぜWASMができたのだろうか • HTML, CSS, JavaScriptで動作するアプリより高機能、パフォーマンスを 求められるようになった ◦ 一般的にはコンパイラ言語の方がパフォーマンスがいい ▪ JavaScriptはインタプリタ言語
◦ ゲーム系、XR、動画編集系 • ウェブが中心のサービスが増えたこと ◦ ブラウザベースで完結することの容易さ 参考: ・https://developer.mozilla.org/ja/docs/WebAssembly ・https://qiita.com/ShuntaShirai/items/3ac92412720789576f22
Workers for Python • Pythonはインタプリタ言語 ◦ コンパイラ言語ではない
Pyodideの利用 • Pyodide(パイオダイド)と読む • PythonをWebブラウザ上で動かすために開発されたランタイム • PyodideがWASMとして振る舞ってPythonを実行する ◦ PythonがそのままWASMとしてコンパイルされるわけではない ▪
パフォーマンスとしては先述のコンパイラ言語よりは劣る 参考・引用: https://news.mynavi.jp/techplus/article/zeropython-99/
Pythonをブラウザ上で実行できるメリット • 初学者が取り組みやすい言語であること • 機械学習、データ分析の簡素化
Pythonコードを動かしてみる • 以下のコードをHTML形式で保存する <html> <head> <script type="module" crossorigin src="https://cdn.jsdelivr.net/npm/@gradio/lite/dist/lite.js"></script> <link
rel="stylesheet" href="https://cdn.jsdelivr.net/npm/@gradio/lite/dist/lite.css" /> </head> <body> <gradio-lite> import gradio as gr def greet(name): return "Hello, " + name + "!" gr.Interface(greet, "textbox", "textbox").launch() </gradio-lite> </body> </html> 参考・引用: https://www.gradio.app/guides/gradio-lite
Pythonコードを動かしてみる • 実行すると 参考・引用: https://blog.cloudflare.com/python-workers/
PythonをCloudflare Workersで動かす仕組み • Pyodideを使ってPythonのコードをWASMの仕組みに乗せて動かしている ◦ Workers自体がWASMを動かせるようになっている
まとめ • Cloudflare WorkersはChrome V8をベースとしたウェブ技術を使っている • それぞれパフォーマンスに影響を及ぼさず、セキュアに実行できる • ウェブでさまざまな言語を動かすためにWebAssemblyを活用している •
PythonのネイティブサポートはPyodideを使ってWebAssemblyに載せて利用
• 大崎にあるITコンサル会社 • 経営戦略から実装、運用までを全てこなす • ベンダーニュートラルの考え方 • 「ないものは作る」 フューチャーについて
• 実用Go言語をはじめとした各種書籍、雑誌の著者たち • Vue.jsのコミッター • TomcatのPMCメンバー • OSS「Vuls」の作成者 こんな人います
ブログも出しています
Cloudflare Meetup Nagano Vol.3 2024.01.18 Sat. Taisei Ito kaedemalu 𝕏
kaedemalu