Google Cloud Run چیست؟
سرویس Serverless گوگل برای اجرای کانتینرهای Stateless با مقیاسدهی خودکار (حتی تا صفر)، بدون نیاز به مدیریت Kubernetes.
چرا مهم است؟
Cloud Run معادل GCP برای Azure Container Apps است و یکی از سادهترین راههای اجرای یک API کانتینری بدون درگیری با Kubernetes محسوب میشود.
تعریف
Cloud Run هر Image کانتینری (هر زبان/فریمورکی) را میگیرد و بهصورت Serverless اجرا میکند — درست مثل Azure Container Apps؛ نیازی به نوشتن YAML مخصوص Kubernetes نیست.
Deploy یک کانتینر
gcloud run deploy myapi --image gcr.io/my-project-id/myapi:1.0 --platform managed --region europe-west1 --allow-unauthenticated
مدل مقیاسدهی
Cloud Run بر اساس تعداد درخواست همزمان، تعداد Instance را خودکار بالا و پایین میبرد و در نبود ترافیک میتواند به صفر Instance برسد — یعنی بدون درخواست، هزینهای پرداخت نمیشود.
محدودیتهای کلیدی
هر Instance باید Stateless باشد (بدون ذخیره داده روی دیسک محلی بین درخواستها) · حداکثر زمان پاسخگویی هر درخواست محدود است · داده ماندگار باید در Cloud SQL، Firestore یا Cloud Storage نگه داشته شود.
اشتباه رایج
❌ نوشتن فایلهای موقت یا داده مهم روی دیسک محلی داخل کانتینر و انتظار ماندگاری آنها بین درخواستها — چون Cloud Run میتواند هر لحظه Instance را از بین ببرد و یک Instance تازه بسازد، هر دادهای که باید بماند حتماً باید در سرویس ذخیرهسازی خارجی نوشته شود.
منبع و مطالعه بیشتر
خلاصه
Cloud Run کانتینرهای Stateless را با مقیاسدهی خودکار (حتی تا صفر Instance) بهصورت Serverless اجرا میکند و بدون ترافیک هزینهای ندارد. داده ماندگار همیشه باید در سرویس ذخیرهسازی خارجی نگه داشته شود، نه داخل کانتینر. مرجع کامل: مستندات Google Cloud.
