Cloudflare 無伺服器平台正式支援 Python Workers:原生整合 Web 框架、資料庫連線與 AI 開發生態

BlueSky

AI 摘要

  • Cloudflare 無伺服器運算平台正式推出 Python Workers 執行環境。
  • 新版本原生支援 ASGI 與 WSGI 介面,可直接運行主流 Web 框架與資料庫連線。
  • 程式碼於 WebAssembly 沙箱中執行,原生擴充套件需編譯為相容版本。

網路基礎架構與安全廠商 Cloudflare 宣布,旗下無伺服器運算平台 Workers 的 Python 執行環境「Python Workers」已正式進入正式發布(General Availability)階段,結束了自 2024 年展開的公開測試。這意味著 Python 正式成為 Cloudflare Developer Platform 的官方支援程式語言,開發者可直接利用 Python 構建邊緣運算應用,並無縫介接 Workers AI、R2 儲存、D1 資料庫、Hyperdrive、Durable Objects、Queues 以及 Workflows 等平台核心服務。

底層架構革新:消除手動資料型別轉換

Python Workers 是建構於 Pyodide 專案之上,讓 Python 程式碼能在 Cloudflare Workers 的 WebAssembly(Wasm)沙箱機制內安全執行。在先前的測試版本中,開發者若需要調用 Cloudflare Queues 或其他平台服務,往往必須手動處理 Python 與 JavaScript 執行環境之間的資料型別轉換問題,增加了程式開發的複雜度與維護成本。

在正式版本中,Cloudflare 將型別轉換工作全面深度整合進 Workers 執行環境以及官方 Python SDK。目前 Python 程式碼可直接傳遞 Python 字典(Dictionary)等原生資料結構至各項平台服務,無需再額外撰寫中介的 JavaScript 轉換程式碼,大幅簡化了開發流程。

原生支援 ASGI 與 WSGI:Web 框架無需獨立伺服器

為滿足現代 Web 應用的架構需求,Cloudflare 在正式上線前補齊了對 ASGI(Asynchronous Server Gateway Interface)與 WSGI(Web Server Gateway Interface)兩大標準介面的支援。這兩項標準是 Python Web 應用程式與伺服器溝通的關鍵協定。

藉由內建介接能力,主流的 Python Web 框架如 FastAPIDjango 以及 Flask 均可直接部署於 Workers 環境:

  • 簡化架構:由 Workers 直接負責接收、解析並處理 HTTP 網路請求。
  • 免去中介軟體:開發者不再需要在執行環境中常駐或另外啟動 Uvicorn、Gunicorn 等傳統應用程式伺服器,有效降低邊緣運算的資源開銷。

打通 TCP 網路限制:資料庫與 AI 生態系全面對接

早期 Python Workers 在網路層面存在限制,原本並不支援 TCP Socket 連線,導致標準的 Python 資料庫驅動程式無法與外部關聯式資料庫建立通訊。Cloudflare 現已在 Workers 環境中補足相關網路功能,讓 Python 資料庫驅動程式能透過 Cloudflare Hyperdrive 建立連線,順暢存取 PostgreSQL 與 MySQL 資料庫。

網路連線能力的擴充同時帶動了 AI 生態系的整合。目前需要主動對外發送請求的各類 Python AI 函式庫均可在 Python Workers 上正常運作。Cloudflare 指出,開發者已能直接調用 OpenAILangChainMCP(Model Context Protocol) 等套件,並結合 Workers AI 或 AI Gateway 打造邊緣端智慧應用,直接由 Python Workers 對外呼叫各類 AI API。

現存限制與後續生態發展

儘管功能大幅擴充,Python Workers 仍受限於 WebAssembly 執行環境的特點。對於含有 C、C++ 或 Rust 原生擴充功能(Native Extensions)的 Python 第三方套件,必須先具備與 WebAssembly 相容的編譯版本才能順利載入使用。

為了解決生態系相容性挑戰,Cloudflare 已參與制定 Python 官方增強提案 PEP 783,共同推動建立名為 PyEmscripten 的套件平台規格,以利開源維護者能夠標準化發布相容於 WebAssembly 環境的 Python 套件。Cloudflare 表示,未來的更新計畫將著重於進一步提高 Python Workers 的執行效能、降低記憶體佔用量,並持續擴大相容套件的涵蓋範圍。

Reference Link : ithome.com.tw

Related Articles

Stay Connected

0FansLike
0FollowersFollow
22,800SubscribersSubscribe
spot_img

Latest Articles