عرض محتوى ديناميكي واستضافة خدمات مصغّرة باستخدام "استضافة Firebase"

يمكن دمج Firebase Hosting مع خيارات الحوسبة بدون خادم، بما في ذلك Cloud Functions for Firebase وCloud Run. يتم استخدام Firebase Hosting مع هذه الخيارات، يمكنك استضافة خدمات مصغّرة من خلال توجيه طلبات HTTPS لتشغيل الوظائف والتطبيقات المضمنة في الحاوية لتشغيلها في بيئة مُدارة وآمنة.

Cloud Functions for Firebase: أنت تكتب وتنشر وهي رمز خلفية يستجيب لمشغِّل معين. بعد ذلك، باستخدام Firebase Hosting، يمكنك توجيه طلبات HTTPS لتشغيل الدالة لتشغيله.

Cloud Run: يمكنك كتابة تطبيق ونشره مجمّع في صورة حاوية. بعد ذلك، باستخدام Firebase Hosting، يمكنه توجيه طلبات HTTPS لتشغيل تطبيقك المحوَّل إلى أن يتم تشغيله.

حالات الاستخدام

كيف يمكنك استخدام خيارات الحوسبة بدون خادم مع Firebase Hosting؟

  • عرض محتوى ديناميكي: بالإضافة إلى عرض محتوى ثابت على في موقعك الإلكتروني على Hosting، يمكنك عرض ردود يتم إنشاؤها ديناميكيًا من أو تطبيق حاوية يعمل على إجراء منطق من جانب الخادم.

    على سبيل المثال، يمكنك توجيه نمط عنوان URL (مثل /blog/<blog-post-id>) إلى نمط دالة تستخدم معلمة معرّف مشاركة المدونة في عنوان URL لاسترداد المحتوى ديناميكيًا من قاعدة البيانات.

  • إنشاء واجهات برمجة تطبيقات REST: يمكنك إنشاء واجهة برمجة تطبيقات خدمة مصغّرة باستخدام الدوال.

    على سبيل المثال، يمكن للوظائف معالجة وظيفة تسجيل الدخول إلى موقعك الإلكتروني. في حين تتم استضافة موقعك الإلكتروني على /، تتم معالجة أي طلب يتم إرساله إلى "/api". ستتم إعادة توجيهك إليه إلى واجهة برمجة تطبيقات الخدمة المصغَّرة. على سبيل المثال، يمكنك الاطّلاع على هذا النموذج المفتوح المصدر.

  • المحتوى الديناميكي في ذاكرة التخزين المؤقت — يمكنك إعداد التخزين المؤقت للمحتوى الديناميكي على شبكة توصيل محتوى (CDN) عالمية.

    على سبيل المثال، إذا كانت الدالة تنشئ محتوى جديدًا بشكل دوري فقط، يمكنك تسريع تطبيقك من خلال التخزين المؤقت للمحتوى الذي يتم إنشاؤه لمدة قصيرة فترة زمنية محددة. يمكنك أيضًا تقليل تكاليف التنفيذ لأنّه يتم عرض المحتوى من شبكة توصيل المحتوى (CDN) بدلاً من استخدام دالة مفعَّلة أو تطبيق مُحاوي.

  • عرض تطبيقات الصفحة الواحدة مسبقًا: يمكنك تحسين محركات البحث وتحسين محركات البحث المشاركة عبر العديد من الشبكات الاجتماعية عن طريق إنشاء علامات meta ديناميكية. إلى للمزيد من المعلومات، يُرجى مشاهدة هذا الفيديو. أو الاطّلاع على هذا النموذج مفتوح المصدر.

تحديد خيار بدون خادم

في حين أن كلاً من Cloud Functions for Firebase و Cloud Run التكامل مع Firebase Hosting وتوفر نظامًا مُدارًا بالكامل مع إمكانية القياس التلقائي وآمن بلا خادم، فيمكن الاستفادة من الخيارين في حالات الاستخدام المختلفة والمستوى المطلوب من التهيئة المخصصة.

عند استخدام أي من الخيارين بدون خادم، فمن الأفضل وضعه في موقع واحد مع الخوادم للنطاق Firebase Hosting من خلال النشر في إحدى المناطق التالية:

  • us-west1
  • us-central1
  • us-east1
  • europe-west1
  • asia-east1

يصف الجدول التالي بعض الاعتبارات الأساسية لاستخدام "Cloud Functions for Firebase" ضد "Cloud Run". للحصول على قائمة كاملة والحصص والحدود والمقاييس، فراجع الوثائق التفصيلية لكل منتج (Cloud Functions for Firebase أو Cloud Run).

ملاحظة Cloud Functions for Firebase Cloud Run
الإعداد تجمع واجهة Firebase CLI المهام المتعددة في أوامر فردية، بدءًا من الإعداد ووصولاً إلى التصميم والنشر. توفر الحاويات المزيد من الخيارات القابلة للتخصيص، لذا قم بإعدادها وإنشائها مهام النشر تتضمن خطوات منفصلة.
بيئة وقت التشغيل تتطلّب هذه الطريقة استخدام Node.js، ولكن يمكنك تحديد إصدار Node.js الذي تريد استخدامه. عند إنشاء الحاوية، يمكنك تحديد بيئة وقت التشغيل.
اللغات وأُطر العمل المتوافقة

JavaScript وTypeScript

وتتوفّر أُطر عمل الويب، مثل Express.js.

أي لغة تتوافق مع ملفات Docker، بما في ذلك Go وNode.js وPython وJava وغيرها

تتوفّر أُطر عمل الويب لكل لغة.

مهلة طلب Hosting 60 ثانية (انظر الملاحظة أدناه) 60 ثانية (انظر الملاحظة أدناه)
التزامن طلب واحد لكل مثيل دالة
(بدون تزامن لكل مثيل)
ما يصل إلى 1,000 طلب متزامن لكل مثيل حاوية
الفوترة استخدام Cloud Functions

حصة الاستخدام المجانية، ولكن يجب إدخال حساب Cloud Billing. يُرجى الاطّلاع على الأسئلة الشائعة حول Firebase.

استخدام Cloud Run + مساحة تخزين بسعة Container Registry

حصة الاستخدام المجانية، ولكن يجب إدخال حساب Cloud Billing.