"Cloud Functions" لـ Firebase

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

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




الإمكانات الأساسية

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

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

يمكنك التكامل مع ميزات Firebase باستخدام مدير 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. تنشئ واجهة سطر الأوامر في 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 لعرض سجلّاتك والبحث فيها.

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