محتويات الدورة

Google Cloud / المتوسط: عقود الخدمات وتشغيلها / الدرس 10

تنفيذ Cloud Run وتوسعه

صمم خدمة الطلب وفق عقد الحاوية والهوية والتزامن والمهلة والحالة ولا تفترض أن المنصة تصلح التطبيق.

وقت القراءة التقريبي: 4 دقيقةتاريخ مراجعة المحتوى
في هذه الصفحة

أهداف الدرس

  • شرح عقد حاوية الدخول والفرق بين الخدمة والمهمة.
  • فصل سياسة الدخول من تفويض المستدعي.
  • تحديد التزامن وطلب الخدمة التابعة.

لخدمة الطلب عقد تشغيل محدد

تدعم Cloud Run أنماط تنفيذ متعددة؛ نركز على خدمة الطلب ونقارن المهام. يجب أن تستمع حاوية الدخول على PORT المضبوط و 0.0.0.0 لا loopback وحده وفق العقد. تنتهي job بخروج بدلا من تشغيل خادم، وللأنماط والبيئات شروط دعم خاصة.

تؤثر البداية ومهلة الطلب والإغلاق والذاكرة و CPU والتزامن في التطبيق. يتبع إنهاء TLS والتمرير عقد المنصة؛ لا يثبت منفذ محلي منشور الامتثال. لا تشغل الدورة حاوية أو خادما ولا تدعي نشرا.

فحص قصد تشغيل اصطناعي محليا

يراجع البرنامج نموذج عنوان استماع ومصدر منفذ وقرار حالة. يحدد loopback كتعارض والحفظ المحلي فقط كغير كاف للدائم. لا يقرأ خدمة Cloud Run فعلية ولا يفحص صورة أو متغير بيئة.

لنظام الحاوية القابل للكتابة عمر مرتبط بالنسخة وليس قاعدة دائمة. انقل المطلوب لخدمة مناسبة بصلاحية وإعادة صحيحتين. يفيد مخبأ ذاكرة إذا تحمل التطبيق فقده وتعدد النسخ المستقلة.

python مراجعة نموذج تشغيل خدمة مخترع
model = {"listen": "127.0.0.1", "port_source": "PORT", "durable_state": "local-only"}
issues = []
if model["listen"] != "0.0.0.0": issues.append("listen-address review")
if model["durable_state"] == "local-only": issues.append("durability review")
print("; ".join(issues))
الناتج المتوقع
listen-address review; durability review

يكشف العرف المحلي فجوتين ولا يلاحظ حاوية تعمل.

إمكان الوصول وسلطة الاستدعاء مستقلان

تضبط ingress مسارات الحركة وتحدد المصادقة و IAM من يستدعي وفق إعداد الوصول. ليس المسار الخاص منحة تطبيق، ولا تتجاوز الهوية الصحيحة كل قيد دخول. ويختلف اتصال VPC الصادر عن قبول الوارد.

استخدم هوية تشغيل مخصصة وجمهور رمز صريحا حيث يلزم. لا تنسخ دخول مطور أو مفتاحا طويلا للصورة. راجع منح الحساب ومسار العميل والشبكة عندما يتصل بـ SQL أو Storage.

يشكل التزامن وعدد النسخ حدود حمل

يضرب البرنامج عدد نسخ مخترعا بتزامنها فينتج أربعين خانة طلب، لا ضمان إنجاز. قد تخفض CPU والحالة والمجمع والبداية وتأخير التابع الحد المفيد؛ ويجب أن يتحمل المعالج تزامنه.

تحد عتبة النسخ التوسع وفق العقد وتسمح الوثائق الحالية بتجاوز وجيز في ظروف. يهم نطاق الخدمة والمراجعة وتقسيم الحركة والإطلاق؛ فلا تجعل الضرب سقفا مطلقا للاتصال أوالكلفة. أضف احتياطا وقبول عمل.

python حساب حدود تزامن اصطناعية
planned_instances = 5
concurrency_per_instance = 8
request_slots = planned_instances * concurrency_per_instance
print(f"planning_slots={request_slots}")
print("cloud capacity verified", False)
الناتج المتوقع
planning_slots=40
cloud capacity verified False

يعطي خمسة في ثمانية أربعين خانة تخطيط دون فحص السعة السحابية.

يحتاج إطلاق المراجعة دليلا تطبيقيا

تدعم المراجعات والحركة أنماط إطلاق ولا يثبت تحديث الإعداد نجاح المعاملة أوتوافق القاعدة. حدد الأثر الثابت والترحيل والجاهزية والرجوع والجلسة والحالة. قد تؤدي إعادة طلب انتهت مهلته إلى تكرار الأثر، ولا تعني نهاية الطلب تراجع الجميع.

راقب التأخير والخطأ والبداية والتشبع والتابع مع SLO المقصود، واختبر الإغلاق والإلغاء مخولا. كل عروضنا مراجعة محلية ولا تنشر مراجعة أوتغير الدخول والهوية والحركة والتوسع.

الأخطاء الشائعة وإصلاحها

تستمع الخدمة محليا فقط.

لماذا يحدث؟
نُقل ربط التطوير للتشغيل.
كيف تصلحه؟
اتبع عقد العنوان و PORT.
كيف تتجنب تكراره؟
راجع البداية قبل النشر.

تعد الملفات المحلية حالة دائمة مشتركة.

لماذا يحدث؟
اختلط عمر النسخة بالديمومة.
كيف تصلحه؟
استخدم حالة خارجية مناسبة.
كيف تتجنب تكراره؟
اختبر الفقد والتعدد.

تعد عتبة النسخ سقف اتصال دقيقا.

لماذا يحدث؟
بُسط التوسع والعملاء.
كيف تصلحه؟
نمذج المجمع والتداخل والحدود.
كيف تتجنب تكراره؟
احفظ الاحتياط وسياسة القبول.

اختبر فهمك

1. تزامن الخدمة 20 ولها مخزن طلب واحد بلا مزامنة. ماالخلل؟

اعرض الحل المشروح

قد تصل طلبات متعددة في النسخة نفسها إلى المخزن بالتزامن. لا يثبت نجاح حركة قليلة صحة المعالج تحت التزامن المضبوط. استخدم حالة لكل طلب أو تصميما مبررا للمزامنة والملكية، أو تزامنا أقل مختارا مع مراجعة تبعات السعة. لا يصلح تشغيل نسخ أكثر معالجا غير آمن داخل كل نسخة. يجب أن يتطابق عقد الحالة مع عدد الطلبات الذي يسمح به الإعداد فعليا.

2. لماذا تفصل الدخول والاستدعاء والقاعدة؟

اعرض الحل المشروح

تضبط المراحل مسار الطلب المسموح، ثم سلطة المستدعي على الخدمة، ثم هوية الحمل واتصاله وصلاحيته في القاعدة. لا يثبت نجاح إحداها الأخرى. سجل الهويات والجمهور ومسارات الشبكة ومنح القاعدة، واستخدم أدلة بيئية مخولة قبل إطلاق حقيقي. لا تختزل السلسلة في وصف «خدمة خاصة»، لأنه لا يشرح من يستدعيها أو كيف يصل حملها إلى بياناته.

أهم ما تعلمته

  • اتبع عقد نمط التنفيذ المختار.
  • العمر والهوية والدخول والتزامن اختيارات مختلفة.
  • ليس حساب التخطيط دليلا لسعة أوسياسة منشورة.

المراجع الرسمية