Présentation
Cloudflare a annoncé la disponibilité générale (GA) des Python Workers, une extension du service Workers qui permet d’exécuter du code Python directement sur le réseau Edge. Cette évolution élargit le spectre des langages supportés, jusque‑là limité à JavaScript/TypeScript, et ouvre la plateforme aux développeurs familiers avec l’écosystème Python.
Architecture du runtime Python
Le runtime s’appuie sur WebAssembly (Wasm) pour compiler l’interpréteur CPython et le faire tourner dans le même bac à sable que les Workers JavaScript. Cette approche garantit l’isolation des requêtes, la réplication des mêmes limites de mémoire (128 Mo) et la capacité de partager les mêmes API Edge (KV, Durable Objects, Cache, etc.). Le code source Python est empaqueté dans un module Wasm, puis chargé par le moteur Workers au moment du déploiement via le CLI wrangler. Aucun serveur dédié n’est requis ; la logique s’exécute sur les nœuds de la couche d’edge de Cloudflare, bénéficiant ainsi de la latence minimale du réseau mondial.
Implications pour les développeurs
Les développeurs peuvent désormais écrire des fonctions serverless en Python, profiter de la vaste bibliothèque standard et, dans une certaine mesure, installer des paquets pure‑Python via le fichier requirements.txt. Le workflow de déploiement reste identique à celui des Workers JavaScript : le code est versionné, testé localement avec wrangler dev, puis publié avec wrangler publish. Cette uniformité simplifie la migration de projets existants ou la création de nouvelles API sans changer d’infrastructure. De plus, l’accès aux services Cloudflare (Workers KV, R2, Durable Objects) se fait via les mêmes points d’entrée, ce qui évite la duplication d’authentification ou de configuration.
Limites et perspectives
L’article ne fournit pas de métriques de performance précises, mais le recours à Wasm implique généralement un temps de démarrage à froid supérieur à celui des Workers JavaScript, en raison du chargement de l’interpréteur CPython. Les extensions natives C ne sont pas supportées, ce qui contraint l’utilisation aux paquets pure‑Python. La taille maximale du bundle Wasm reste alignée sur la limite de 10 Mo imposée aux Workers, limitant ainsi les dépendances volumineuses. Enfin, la disponibilité générale indique que le service a passé les phases bêta et de test interne, mais Cloudflare continue de publier des mises à jour pour améliorer la compatibilité et les performances.