Cloudflare、「Python Workers」の一般提供を開始 FastAPIやDjango対応に加えJavaScript不要の連携を実現
要点
-
米Cloudflareは、エッジコンピューティング環境「Cloudflare Workers」においてPythonを実行できる「Python Workers」の一般提供(GA)を開始した。
-
Pythonが公式の第一級サポート言語となり、Workers AIやストレージ群(R2、D1)など同社の各種プラットフォーム機能とシームレスに連携可能になった。
-
従来必要だったJavaScriptとの明示的なデータ型変換処理がランタイムに内包され、純粋なPythonコードのみで記述できるようになった。
-
ASGIおよびWSGI規格に対応した専用コネクタにより、FastAPIやFlask、Djangoといった主要なWebフレームワークをサーバー管理なしでそのまま稼働できる。
-
Hyperdriveとの統合により、PostgreSQLやMySQLなどのリレーショナルデータベースへの接続環境も整備された。
-
米Cloudflareは2026年9月21日、エッジサーバー上でサーバーレスコードを実行するプラットフォーム「Cloudflare Workers」において、Pythonをネイティブに実行できる「Python Workers」を一般提供(GA: Generally Available)したと発表した。約2年間の開発・プレビュー期間を経て、同社の開発者プラットフォームにおける正式な第一級(ファーストクラス)サポート言語として位置付けられる。
エッジ環境で第一級言語として正式稼働
Python Workersは、Webブラウザ外でも動作するWebAssembly(Wasm)技術と、Wasm向けPython実行環境「Pyodide」を活用して構築されている。同社は2018年からWorkersでWebAssemblyをサポートしており、この基盤を応用することでエッジ上でのPython実行を実現してきた。
今回の一般提供への移行に伴い、Python Workersは実験的な位置付けから本番環境で利用可能な機能へと昇格した。これにより開発者は、普段使い慣れたPythonのライブラリや設計パターンをそのまま持ち込み、Cloudflareのグローバルネットワーク上で即座にスケーラブルなアプリケーションを構築できるようになる。
また、AI推論を実行する「Workers AI」をはじめ、オブジェクトストレージの「R2」、リレーショナルデータベース「D1」、状態管理機能「Durable Objects」、非同期メッセージングを担う「Queues」、タスク実行基盤「Workflows」といった同社の主要サービス群とシームレスに接続できる点も特徴だ。さらに、Workerの中から別のWorkerを動的に生成する「Dynamic Workers」の仕組みを利用して、Python Workerを呼び出す構成にも対応しているという。
煩雑だった型変換を解消し、純粋なPython記法に対応
今回の発表における大きな技術的改善点の一つが、Cloudflareの各種機能(バインディング)を呼び出す際のデータ型変換の自動化だ。
これまでのPython Workersでは、キューやストレージといった同社プラットフォームの機能へデータを渡す際、リモートプロシージャコール(RPC)の境界でPythonのオブジェクトを明示的にJavaScriptやTypeScriptのオブジェクトへと変換する必要があった。たとえば辞書型のデータを送信する場合でも、専用の変換関数(to_js)を介してJavaScriptのオブジェクト形式へと手動で変換するグルーコード(仲介コード)を記述しなければならず、開発者やAIエージェントにとってエラーの原因になりやすかったと説明されている。
今回のGAにあわせ、Cloudflareはこうした型変換処理をランタイムおよびPython SDKの内部に完全にカプセル化した。開発者はJavaScriptのコードや実行環境を意識することなく、標準的なPythonのデータ構造(辞書型など)をそのままプラットフォームAPIに渡すことが可能となり、より自然なPythonらしい(Pythonicな)記述で開発が進められるようになっている。
FastAPIやDjangoをサーバー設定なしでエッジ展開
Webアプリケーション開発の面では、FastAPI、Flask、Djangoなどの主要フレームワークをPython Workers上で直接稼働させることが可能になった。
通常の環境でこれらのフレームワークを動かす場合、クライアントからの大量接続やスレッド管理を行うために「Uvicorn」や「Gunicorn」といったWebサーバーソフトウェアを個別にセットアップして運用する必要がある。一方、Cloudflare Workersでは、同社のグローバルネットワーク自体が負荷分散やスケーリングを担うため、Worker内部で従来のサーバープロセスを立ち上げる必要がない。
これに対応するため、同社は非同期規格向けの「workers.asgi」および同期規格向けの「workers.wsgi」という専用の軽量コネクタを用意した。これらのコネクタが、Cloudflareのエッジに届くネイティブなJavaScriptのリクエストをPython標準のASGI/WSGI構造へと素早く変換し、アプリケーションからのレスポンスを最小限のオーバーヘッドでクライアントへ送り返す。開発者は既存のフレームワークでコードを記述するだけで、インフラ管理を意識することなく世界中に分散配置された高速なAPIサーバーを展開できる。
Hyperdrive連携によるリレーショナルデータベースの利用
さらに、PostgreSQLやMySQLといった外部のリレーショナルデータベースとの接続性も改善された。
WebAssembly上で動作する従来のPython環境では、TCPソケット通信がサポートされていなかったため、aiomysqlやasyncpgといった標準的なデータベースドライバーを用いた通信が行えないという制約が存在していた。今回のリリースでは、Cloudflareのデータベース高速化プロキシサービス「Hyperdrive」との統合に対応したことで、Python Workersから既存のデータベースへの接続がスムーズに行えるようになったとしている。