Python Workers 正式轉正
經過兩年預覽,Cloudflare Python Workers 正式進入 GA,意思是 Python 現在成了 Developer Platform 的一等公民。底層做法不是另開 Python 伺服器,而是透過 Pyodide,把 CPython 編譯成 WebAssembly,再放進 V8-based workerd runtime 執行。開發者能直接用 Python 串接 D1、R2、KV、Queues、Workers AI、Vectorize 與 Durable Objects,也能部署 FastAPI、Flask、Django、LangChain 或 MCP Server,不再需要自己補 JavaScript 轉接程式。
現實應用
最直接的場景是 API、Webhook、資料轉換、排程工作與輕量 AI pipeline。原本熟悉 Python,但不想管理容器、Gunicorn 或 Kubernetes 的團隊會很有感;資料與 AI 工程師也能沿用既有語言,把推論、RAG 或 agent API 部署到 Cloudflare 邊緣網路。FastAPI、Django、Flask 分別可透過 ASGI/WSGI adapter 接入,由 Workers 平台負責連線與擴展。
期望評估
低標來看,我認為它至少能讓 Python 團隊更快交付全球可用的小型 API,並省掉伺服器維運與一部分跨語言整合成本。高標來看,我猜 Cloudflare 想把 Workers 變成 Python AI 應用的完整執行層,從模型、向量資料庫到儲存與工作流程都留在同一平台。不過這仍不是一般 Linux Python 主機的完全替代品。
商業策略分析
受影響的不只 AWS Lambda、Vercel Functions 等 serverless 服務,也包含靠容器承載 Python API 的平台。Cloudflare 真正的盤算,是用 Python 龐大的 Web、資料科學與 AI 生態,把開發者帶進自家的 D1、R2、Workers AI 和 Vectorize。我認為值得跟進,但目前較適合先拿無狀態 API、AI gateway 或內部工具試跑;需要原生系統套件、多執行緒或長時間運算的服務,不必急著搬家。
實作細節
先安裝 uv 與 Node.js,再執行 uvx --from workers-py pywrangler init 建立專案;本機開發用 uv run pywrangler dev,部署則是 uv run pywrangler deploy,設定中需加入 python_workers compatibility flag。pywrangler 會在本機用 workerd、V8、WebAssembly 與 Pyodide 模擬正式環境。已知限制包括 threading、multiprocessing 無法運作,部分套件尚未提供 PyEmscripten wheel;檔案系統也只是暫存記憶體,持久資料仍要放進 KV、R2 或 Durable Objects。