Bulut · 2 Ekim 2026
Ayrıca şu dilde de yayımlandı 中文
Cloudflare Python Workers GA ile Soğuk Başlatma ve Ön Yüküm Sorusları
Cloudflare Python Workers'ın Genel Kullanım (GA) aşamasına geçmesi iki yıl sonraki önizleme sonrası gerçekleşti. Python, JavaScript ve TypeScript'ten Workers Platformunda yerini aldı. Bu süreçte Python Workers, Workers AI, R2, D1, Hyperdrive, Durable Objects, Queues ve Workflows ile entegrasyon sağladı. Ayrıca FastAPI, Django ve Flask gibi çerçeveler desteklendi.
GA aşamasına geçiş, üç mühendissel katman üzerinden sağlandı. İlk katman, paketleme standartıdır. Python Workers, Pyodide üzerinde çalışır ve C, C++ veya Rust uzantılı paketler WebAssembly'e dönüştürülür. Bu dönüşüm için standart bir yol yoktu ve Cloudflare kendi paketlerini derledi ve barındırdı. PEP 783, PyEmscripten adlı bir standart geliştirildi ve bir yıl üzeri süren tartışmalardan sonra kabul edildi. Ayrıca Pyodide derleme aracı sabitlendi ve cibuildwheel'e PyEmscripten desteği eklendi, böylece sürücüler kendi paketlerini derleyebilsin.
İkinci katman, soket köprüsüdür. asyncpg ve aiomysql gibi sürücüler standart socket modülünü kullanır ve bu, WebAssembly ortamında POSIX sistem çağrıları stub olur. Cloudflare, bu çağrıları Workers connect API üzerinden yönetti. Sistem çağrısı düzeyinde çeviriler gerçekleştiği için sürücüler değiştirilmedi ve Hyperdrive entegrasyonu mümkün oldu.
Üçüncü katman, HTTP istemcisi katkılarıdır. requests ve httpx gibi kütüphaneler, WebAssembly ortamında fetch API üzerinden çalışır. Bu sayede OpenAI, LangChain ve MCP gibi hizmetler Worker içinde çalışabilir.
Bağlantılar da Pythonik hale geldi. Sıra ve kuyruklara sözlük gönderirken artık to_js dönüşümü gerekmez, tipi dönüşümü çalışma zamanı ve SDK içinde gerçekleşir. Web çerçeveleri, bir sunucu yerine bağlayıcılar üzerinden gelir. workers.asgi ve workers.wsgi, gelen JavaScript isteklerini WSGI ve ASGI uygulama beklediği gibi işler.
Topluluk tepkileri keskin bir bölünmeye dönüştü. Özellikle üçüncü katmanın ardından, urllib3 sürücüsünün geliştiricisi illia-v, Hacker News'ta bir yazıda, fonundurun sürücü katkılarının yerine sürücü bakımı fonlandığını belirtti. "Sürücü katkısı fonlamak, sürücü bakıcılarını fonlamakla farklıdır."
urllib3'de Emscripten arka plan hâlâ deneysel kalıyor ve güvenlik politikasında dışarıdan range dışı bırakıldı. CVE-2025-50182 gibi sorunlar, fetch üzerinden yönlendirme davranışında farklılık gösterdiği için ortaya çıktı. Bu tür farklılıklar, tarayıcı ağ semantiklerinin urllib3'in geleneksel arka planından farklı olduğunu gösteriyor.
Soğuk başlatma süresi tartışmaların önünde sayısal veriler ortaya çıktı. Wasmer'un Syrus Akbary, Cloudflare Workers'ın 900ms'lik bir benchmark karşı 60ms'lik bir başlatma süresi gösterdiği iddialar yapıldı. Cloudflare, kopyalama ve paylaşım mekanizmalarının soğuk başlatmayı azalttığını belirtti.
Akbary, sürüm bağlayıcısı ile ilgili bir diğer endişe de dile getirdi. Picheta, Python 3.12, 3.13 ve 3.14 sürümlerinin desteklendiğini, eski sürümlerde Pyodide özelliği sınırlı kalır olduğunu söyledi. Bu, sürüm eşleşmesi gerektiği yönünde bir soru işareti yarattı.
Bellek tüketimi de bir endişe olarak ortaya çıktı. dangoodmanUT, Python çalışma zamanı 10'ların üzerindeki megabaytlarca artan bellek tüketimine yol açabileceğini öngördü.
Teknoloji tartışmaları, fonlama eleştirisine dönüştü. Simon Willison, Cloudflare'nin Pyodide'ye fonu yönlendirmesi önerdi. Picheta, Gyeongjae Choi'un Pyodide çekirdek geliştiricisi olduğunu ve Chatham'ın Pyodide'ye işe alındığını belirtildi. Ilan, çalışma zamanı üzerinde iki zaten sürücü geliştiriciyi içeriyor.