Cloud Functions لمنصة Firebase

Cloud Functions for Firebase هو إطار عمل بدون خادم يتيح لك تشغيل رمز الخلفية تلقائيًا استجابةً للأحداث التي يتم تشغيلها بواسطة أحداث الخلفية أو طلبات HTTPS أو وظائف Admin SDK أو Cloud Scheduler. يتم تخزين رمز JavaScript أو TypeScript أو Python على بنية Google Cloud الأساسية ويتم تنفيذه في بيئة مُدارة. ليس عليك إدارة خوادمك وتوسيع نطاقها.

هل تستخدم حاليًا دوال Cloud Run في Google Cloud؟ مزيد من المعلومات حول دور Firebase.

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

الإمكانات الرئيسية

تدمج ميزات Firebase وتربط Firebase بخدمة Google Cloud

يمكن أن تستجيب الدوال التي تكتبها للأحداث التي تنشئها ميزات مختلفة من Firebase وGoogle Cloud، بدءًا من مشغّلات Firebase Authentication إلى مشغّلات Cloud Storage.

يمكنك الدمج بين ميزات Firebase باستخدام Admin SDK مع Cloud Functions، والدمج مع خدمات تابعة لجهات خارجية من خلال كتابة خطافات الويب الخاصة بك. Cloud Functions تقلّل من التعليمات البرمجية النموذجية المكرّرة، ما يسهّل استخدام Firebase وGoogle Cloud داخل الدالة.
لا يحتاج إلى صيانة يمكنك نشر رموز JavaScript أو TypeScript أو Python البرمجية على خوادمنا باستخدام أمر واحد من سطر الأوامر. بعد ذلك، تعمل Firebase تلقائيًا على زيادة موارد الحوسبة لتتطابق مع أنماط استخدام المستخدمين. لن تقلق بشأن بيانات الاعتماد أو إعداد الخادم أو توفير خوادم جديدة أو إيقاف الخوادم القديمة.
الحفاظ على خصوصية منطقك وأمانه في كثير من الحالات، يفضّل المطوّرون التحكّم في منطق التطبيق على الخادم لتجنُّب التلاعب به من جهة العميل. بالإضافة إلى ذلك، لا يُستحسن أحيانًا السماح بإجراء هندسة عكسية على هذا الرمز. Cloud Functions معزول تمامًا عن العميل، لذا يمكنك التأكّد من أنّه خاص وينفّذ دائمًا ما تريده بالضبط.

كيف تعمل هذه الميزة؟

بعد كتابة دالة ونشرها، تبدأ خوادم Google في إدارة الدالة على الفور. يمكن تشغيل الدالة مباشرةً باستخدام طلب HTTP أو Admin SDK أو مهمة مجدوَلة، أو في حالة الدوال التي تعمل في الخلفية، تستمع خوادم Google إلى الأحداث وتشغّل الدالة عند تفعيلها.

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

مراحل نشاط دالة تعمل في الخلفية

  1. تكتب رمزًا لدالة جديدة، وتختار موفّر أحداث (مثل Cloud Firestore)، وتحدّد الشروط التي يجب أن يتم بموجبها تنفيذ الدالة.
  2. عند نشر الدالة:
    1. تنشئ واجهة سطر الأوامر (CLI) الخاصة بـ Firebase أرشيف .zip لرمز الدالة، يتم تحميله بعد ذلك إلى حزمة Cloud Storage (مسبوقة بالبادئة gcf-sources) قبل أن تنشئ Cloud Functions مستودع Artifact Registry (يُسمى gcf-artifacts) في مشروعك.
    2. يسترد Cloud Build رمز الدالة وينشئ مصدر الدالة. يمكنك عرض سجلّات Cloud Build في وحدة تحكّم Google Cloud.
    3. يتم تحميل صورة الحاوية لرمز الدوال التي تم إنشاؤها إلى مستودع Artifact Registry خاص في مشروعك (يُسمى gcf-artifacts)، ويتم طرح الدالة الجديدة.
  3. عندما ينشئ موفّر الحدث حدثًا يتطابق مع شروط الدالة، يتم استدعاء الرمز. تتضمّن الدالة حساب خدمة مرفقًا بها يمكن استخدامه للوصول إلى خدمات Firebase الأخرى بمساعدة Firebase Admin SDK.
  4. إذا كانت الدالة مشغولة بمعالجة العديد من الأحداث، تنشئ Google المزيد من المثيلات للتعامل مع العمل بشكل أسرع. إذا كانت الدالة غير نشطة، يتم تنظيف المثيلات.
  5. عند تعديل الدالة من خلال نشر رمز معدَّل، يتم تنظيف مثيلات الإصدارات القديمة مع عناصر البناء في Artifact Registry، واستبدالها بمثيلات جديدة.
  6. عند حذف الدالة، يتم تنظيف جميع مثيلاتها وأرشيفات zip، بالإضافة إلى عناصر البناء ذات الصلة في Artifact Registry. تتم إزالة الربط بين الدالة وموفّر الأحداث.

بالإضافة إلى الاستماع إلى الأحداث باستخدام دالة تعمل في الخلفية، يمكنك استدعاء الدوال مباشرةً باستخدام طلب HTTP أو طلب من العميل. يمكنك أيضًا تشغيل الدوال وفق جدول زمني ثابت أو إضافة دوال المهام إلى قائمة الانتظار من خلال Admin SDK.

مسار التنفيذ

إعداد Cloud Functions ثبِّت أداة Firebase CLI وأعِد إعداد Cloud Functions في مشروعك على Firebase.
كتابة الدوال اكتب رمز JavaScript أو TypeScript أو Python البرمجي للتعامل مع الأحداث من خدمات Firebase أو خدمات Google Cloud أو مقدّمي الأحداث الآخرين.
دوال الاختبار استخدِم المحاكي المحلي لاختبار الدوال.
التفعيل والمراقبة يمكنك ترقية مشروعك إلى خطة أسعار Blaze بنظام الدفع حسب الاستخدام ونشر وظائفك باستخدام واجهة سطر الأوامر Firebase. يمكنك بعد ذلك استخدام وحدة تحكّم Google Cloud للاطّلاع على سجلّاتك والبحث فيها.

الخطوات التالية