آخرین اخبار
همهٔ اخبار
امنیت وب و نرم‌افزار گزارش بحرانیت ۳/۱۰

پشتیبانی کامل از زبان پایتون در Cloudflare Workers؛ تحولی در توسعه Serverless

پشتیبانی کامل از زبان پایتون در Cloudflare Workers؛ تحولی در توسعه Serverless

پلتفرم Cloudflare رسماً اعلام کرد که قابلیت Python Workers اکنون به مرحله دسترسی عمومی (GA) رسیده است. این بدان معناست که پایتون اکنون به عنوان یک زبان درجه‌یک (First-class) در پلتفرم توسعه Cloudflare پشتیبانی می‌شود و توسعه‌دهندگان می‌توانند کدهای خود را بدون نیاز به واسطه‌های پیچیده، مستقیماً در محیط Runtime این سرویس اجرا کنند.

یکپارچگی با اکوسیستم Cloudflare

در نسخه نهایی، Python Workers به طور بومی از Bindingهای پلتفرم Cloudflare پشتیبانی می‌کنند. پیش از این، تبدیل اشیاء پایتون به TypeScript در مرز RPC ضروری بود که منجر به بروز خطاهای انسانی و پیچیدگی در کدنویسی می‌شد. اکنون این فرآیند تبدیل در سطح Runtime و SDK پایتون کپسوله شده است و امکان استفاده از سرویس‌هایی نظیر Workers AI، R2، D1 و Queues به صورت کاملاً پایتونیک (Pythonic) فراهم شده است.

پشتیبانی از فریم‌ورک‌های وب محبوب

توسعه‌دهندگان اکنون می‌توانند از فریم‌ورک‌های مشهوری مانند FastAPI، Django و Flask در محیط Workers استفاده کنند. Cloudflare برای این منظور کانکتورهای workers.asgi و workers.wsgi را معرفی کرده است. این ابزارها به عنوان یک پل بهینه عمل کرده و درخواست‌های native JavaScript را به ساختارهای استاندارد WSGI/ASGI تبدیل می‌کنند. از آنجایی که شبکه جهانی Cloudflare مدیریت Load Balancing و مقیاس‌پذیری را بر عهده دارد، دیگر نیازی به پیکربندی سرورهایی مانند Uvicorn یا Gunicorn نیست.

حل چالش‌های شبکه و پایگاه داده

یکی از بزرگترین موانع در اجرای پایتون روی WebAssembly (Wasm)، عدم پشتیبانی از Socketهای TCP بود که استفاده از درایورهای دیتابیس مانند asyncpg یا aiomysql را غیرممکن می‌کرد. Cloudflare با پیاده‌سازی System Callهای سوکت از طریق Connect API، این مشکل را حل کرده است. این پیشرفت باعث می‌شود ابزاری مانند Hyperdrive برای اتصال به دیتابیس‌های PostgreSQL و MySQL در محیط Python Workers به راحتی قابل استفاده باشد.

گسترش اکوسیستم WebAssembly و AI

برای پشتیبانی از پکیج‌هایی که دارای افزونه‌های C/C++/Rust هستند، Cloudflare پیشنهاد PEP 783 را برای استانداردسازی پلتفرم PyEmscripten ارائه داد. این اقدام باعث می‌شود توسعه‌دهندگان پکیج‌ها بتوانند نسخه‌های سازگار با Wasm را منتشر کنند.

در حوزه هوش مصنوعی، با اصلاح کلاینت‌های HTTP مانند requests و httpx برای مسیریابی از طریق JavaScript Fetch API، اکنون اجرای کتابخانه‌های LangChain و OpenAI در لبه شبکه (Edge) امکان‌پذیر شده است. این قابلیت در ترکیب با Workers AI، امکان اجرای Inference مدل‌ها روی GPUهای شبکه Cloudflare را فراهم می‌کند.