Cloudflare WorkersがPythonをサポート、WebAssembly版Pythonランタイムの「Pyodide」を採用で

2024年4月3日

Cloudflareは、CDNエッジでJavaScriptランタイムによるアプリケーション実行基盤を提供する「Cloudflare Workers」で、Python言語のサポートをオープンベータとして開始したと発表しました

これによりCloudflare Workers上でPythonを用いたアプリケーションの構築が可能になります。

Cloudflare Workersは、Googleが開発するオープンソースのJavaScriptエンジンである「V8」を用いることで、CDNエッジでJavaScriptのアプリケーション実行基盤を実現しています。

今回のCloudflare WorkersによるPythonサポートは、このV8エンジンで実行可能なWebAssemblyの上にWebAssembly版Pythonランタイムである「Pytodide」を採用することで実現しています。

Cloudflare Workers上でWebAssemblyのPythonランタイムを実行

Pyodideは、もともとMozillaが主導して始められたWebAssembly版のPythonランタイムです。

参考:PythonインタプリタをWebAssemblyへコンパイル、Webブラウザで稼働するPython環境「Pyodide」。Mozillaが開発中

オリジナルのPython言語のインタプリタはC言語で書かれており、そのため一般にこのPythonインタプリタは「CPython」と呼ばれています。このCPythonのソースコードがWebAssemblyでコンパイル可能なように最小限の変更を加え、さらにスタンドアロンのWebAssemblyランタイムで実行可能なようにWASI(WebAssembly System Interface)に対応させ、Emscriptenでコンパイルしたものが「Pyodide」です。

これにAPIや非同期処理などのいくつかの工夫を加えてCloudflare Workers上で実行可能にしたものが、今回のCloudflare WorkersによるPythonのサポートとなるわけです。これらの技術的な工夫については「Bringing Python to Workers using Pyodide and WebAssembly」で詳しく説明されているため、興味のある方はぜひこちらをご覧ください。

あわせて読みたい

WebAssembly クラウド プログラミング言語 Cloudflare Python




タグクラウド

クラウド
AWS / Azure / Google Cloud
クラウドネイティブ / サーバレス
クラウドのシェア / クラウドの障害

コンテナ型仮想化

プログラミング言語
JavaScript / Java / .NET
WebAssembly / Web標準
開発ツール / テスト・品質

アジャイル開発 / スクラム / DevOps

データベース / 機械学習・AI
RDB / NoSQL

ネットワーク / セキュリティ
HTTP / QUIC

OS / Windows / Linux / 仮想化
サーバ / ストレージ / ハードウェア

ITエンジニアの給与・年収 / 働き方

殿堂入り / おもしろ / 編集後記

全てのタグを見る

Blogger in Chief

photo of jniino

Junichi Niino(jniino)
IT系の雑誌編集者、オンラインメディア発行人を経て独立。2009年にPublickeyを開始しました。
詳しいプロフィール

Publickeyの新着情報をチェックしませんか?
Twitterで : @Publickey
Facebookで : Publickeyのページ
RSSリーダーで : Feed

最新記事10本