NAW / PRODUCTS 03
IMAGE: AI生成ビジュアル
PRODUCTS / PRODUCTS
Cloudflare、「Python Workers」の正式提供を開始 — FastAPI・Django・Flaskをエッジで、JS接着コード不要に
Cloudflareは2026年9月21日、エッジランタイム「Workers」でPythonを動かす「Python Workers」の正式提供(GA)を発表した。2年のプレビューを経て、PythonはCloudflare開発者プラットフォームの第一級・完全サポート言語になる。FastAPI・Django・Flaskがそのまま動き、Workers AI・R2・D1・Hyperdrive・Durable Objects・Queues・Workflowsと連携できる。バインディング利用時のJavaScriptへの型変換コードも不要になった。
Cloudflareは2026年9月21日、サーバーレスのエッジランタイム「Cloudflare Workers」でPythonアプリケーションを動かすPython Workersの正式提供(GA)を発表した。2年前に導入されたプレビューを経て、PythonはCloudflare開発者プラットフォームの第一級・完全サポート言語になった。既存のPythonコードやライブラリ、設計パターンをそのまま持ち込み、エッジで無限にスケールするAPIとして公開できる。
GAの中身 — 第一級言語化とフレームワーク対応
- 第一級言語に: GAの意味するところは、PythonがCloudflare開発者プラットフォーム上で第一級・完全サポートの言語になったことだとしている。
- プラットフォーム連携: Workers AI、R2、D1、Hyperdrive、Durable Objects、Queues、Workflowsなど、Workersプラットフォームの各機能にPythonから接続できる。発表文の例では、FastAPIアプリからWorkers AIのモデル(
@cf/openai/gpt-oss-120b)を呼び出すコードが示されている。 - Webフレームワーク対応: FastAPI、Django、Flaskなどの人気フレームワークがPython Workers内で動作する。非同期系は
workers.asgi、同期系(Djangoなど)はworkers.wsgiという組み込みコネクタで接続する。WSGI/ASGIインターフェースを使う他のフレームワークも利用できる。 - Dynamic Workers: 別のWorkerの中からPython Workerを生成することもできるとしている。
- JS接着コードの不要化: 以前はQueueなどへのバインディング利用時にPythonオブジェクトをTypeScriptオブジェクトへ明示変換するコード(
to_jsなど)が必要で、誤りの温床になっていた。今回、型変換プロセス全体をWorkersランタイムとPython SDK内にカプセル化し、Pythonの辞書をそのまま渡せるようにした。Python開発者がJavaScript環境を意識せずに書けるのが要点だ。
データベース・パッケージ — HyperdriveとWebAssembly基盤
- Hyperdrive対応: PostgreSQLやMySQLを使う場合、Hyperdriveを経由して接続できるようになった。
- 仕組み: 以前はTCPソケットがなくDBドライバが使えなかった。Workersの
connectAPIを使ってソケットのシステムコールを実装するブリッジを用意し、aiomysqlやasyncpgといった既存ドライバが実装を意識せずに動作するようにした。Wrangler設定でHyperdriveバインディングをひも付け、ホスト・ポート・ユーザー・パスワードを渡して接続する。 - 基盤: Python WorkersはWebAssembly(Pyodide)上で動く。ネイティブ拡張を含むパッケージはWasmへのクロスコンパイルが必要という制約があるが、チームが手動でコンパイル・提供していた方式から、より広いパッケージを使える方向にエコシステムを拡張している(詳細は公式ドキュメントで確認する必要がある)。
開発者への意味 — サーバなしでPython APIを世界展開
- UvicornやGunicornのようなサーバを自分で用意・スケールさせる必要がなく、Workersのグローバルネットワークが負荷分散とスケーリングを担う。開発者は好きなフレームワークでアプリロジックに集中できる構成だ。
- 既存のFastAPIアプリは、エントリーポイントの数行(
asgi.entrypoint(app)など)を足すだけでWorkers上に載せられる。Djangoもwsgi.entrypoint(app)で同様に接続できる。 - 注意点として、料金・制限・対応パッケージの一覧など運用に必要な詳細は本記事では断定しない。導入前には公式ブログとPython Workersドキュメントの最新記述を確認することを推奨する。