الحصص والحدود

توضّح هذه الصفحة الحدود القابلة للتوسّع والمستندة إلى الاستخدام في Cloud Functions وفقًا لخطة أسعار Blaze للدفع حسب الاستخدام. تنطبق هذه الحدود على مشاريع Firebase التي تنشر الدوال في بيئة وقت التشغيل Node.js 10.

توفّر خطة Blaze عددًا كبيرًا من عمليات الاستدعاء ووقت الحوسبة وحركة بيانات الإنترنت مجانًا. ومع ذلك، تتكبّد عمليات نشر الدوال رسومًا صغيرة مقابل مساحة التخزين المستخدَمة لحاوية الدالة. يمكنك الاطّلاع على الأسئلة الشائعة حول Firebase لمزيد من المعلومات.

تشمل حصص Firebase أربعة مجالات:

  • الحدود القصوى لاستخدام الموارد

    تؤثر هذه الحدود في إجمالي كمية الموارد التي يمكن أن تستهلكها الدوال.

  • الحدود الزمنية

    تؤثر هذه الحدود في المدة التي يمكن أن تستغرقها العمليات.

  • القيود على المعدل

    تؤثر هذه القيود في المعدل الذي يمكنك من خلاله استدعاء Firebase API لإدارة الدوال.

  • حدود الشبكات

    تؤثر هذه الحدود في الاتصالات الصادرة والحدود القصوى للمثيلات.

في ما يلي وصف أكثر تفصيلاً للأنواع المختلفة من الحدود. يتم توضيح الاختلافات بين الحدود في Firebase (الجيل الأول) و Firebase (الجيل الثاني) حيثما ينطبق ذلك.

الحدود القصوى لاستخدام الموارد

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

الحصة الوصف الحدّ الأقصى المسموح به (الجيل الأول) الحدّ الأقصى المسموح به (الجيل الثاني) يمكن زيادته النطاق
عدد الدوال إجمالي عدد الدوال التي يمكن نشرها في كل منطقة 1,000 ‫1,000 ناقص عدد خدمات Cloud Run التي تم نشرها لا لكل منطقة
الحدّ الأقصى لحجم عملية النشر الحدّ الأقصى لحجم عملية نشر دالة واحدة ‫100 ميغابايت (مضغوطة) للمصادر
‫500 ميغابايت (غير مضغوطة) للمصادر بالإضافة إلى الوحدات
لا ينطبق لا لكل دالة
الحدّ الأقصى لحجم طلب HTTP غير المضغوط البيانات المُرسَلة إلى دوال HTTP في طلب HTTP ‫10 ميغابايت ‫32 ميغابايت لا لكل عملية استدعاء
الحدّ الأقصى لحجم استجابة HTTP غير المضغوطة البيانات المُرسَلة من دوال HTTP في استجابة HTTP ‫10 ميغابايت ‫10 ميغابايت للاستجابات التي يتم عرضها تدريجيًا
‫32 ميغابايت للاستجابات التي لا يتم عرضها تدريجيًا
لا لكل عملية استدعاء
الحدّ الأقصى لحجم الحدث للدوال المستندة إلى الأحداث البيانات المُرسَلة في الأحداث إلى الدوال التي تعمل في الخلفية ‫10 ميغابايت ‫512 كيلوبايت لأحداث Eventarc
‫10 ميغابايت للأحداث القديمة
لا لكل حدث
الحدّ الأقصى لذاكرة الدالة مقدار الذاكرة التي يمكن أن يستخدمها كل مثيل دالة ‫8 غيغابايت ‫32 غيغابايت لا لكل دالة
الحدّ الأقصى لذاكرة المشروع مقدار الذاكرة، بالبايت، التي يمكن أن يستخدمها المشروع يتم قياسها من خلال إجمالي الذاكرة التي يطلبها المستخدم في جميع مثيلات الدوال على مدار دقيقة واحدة. يعتمد ذلك على المنطقة المحدّدة. قد يكون هذا الحدّ الأقصى أكبر في المناطق ذات السعة العالية أو أقل في المناطق التي تم فتحها مؤخرًا. لا ينطبق نعم لكل مشروع ومنطقة
الحدّ الأقصى لوحدة المعالجة المركزية للمشروع مقدار وحدة المعالجة المركزية، بالوحدة vCPU الجزئية، التي يمكن أن يستخدمها المشروع يتم قياسها من خلال إجمالي وحدة المعالجة المركزية التي يطلبها المستخدم في جميع مثيلات الدوال على مدار دقيقة واحدة. يعتمد ذلك على المنطقة المحدّدة. قد يكون هذا الحدّ الأقصى أكبر في المناطق ذات السعة العالية أو أقل في المناطق التي تم فتحها مؤخرًا. لا ينطبق نعم لكل مشروع ومنطقة

الحدود الزمنية

الحصة الوصف الحدّ الأقصى المسموح به (الجيل الأول) الحدّ الأقصى المسموح به (الجيل الثاني) يمكن زيادته النطاق
الحدّ الأقصى لمدة الدالة الحدّ الأقصى للوقت الذي يمكن أن تستغرقه الدالة قبل إنهاءها قسرًا ‫540 ثانية
  • ‫60 دقيقة لدوال HTTP
  • ‫1,800 ثانية للدوال المجدولة أو دوال "قائمة انتظار المهام"
  • ‫540 ثانية للدوال المستندة إلى الأحداث
لا لكل عملية استدعاء

القيود على المعدل

الحصة الوصف الحدّ الأقصى المسموح به (الجيل الأول) الحدّ الأقصى المسموح به (الجيل الثاني) يمكن زيادته النطاق
طلبات البيانات من واجهة برمجة التطبيقات (القراءة) طلبات وصف الدوال أو إدراجها من خلال Firebase API ‫5,000 لكل 100 ثانية ‫1,200 لكل 60 ثانية للجيل الأول فقط لكل مشروع (الجيل الأول)
لكل منطقة (الجيل الثاني)
طلبات البيانات من واجهة برمجة التطبيقات (الكتابة) طلبات نشر الدوال أو حذفها من خلال Firebase API ‫80 لكل 100 ثانية ‫60 لكل 60 ثانية لا 1 لكل مشروع (الجيل الأول)
لكل منطقة (الجيل الثاني)
طلبات البيانات من واجهة برمجة التطبيقات (الاستدعاء) طلبات واجهة برمجة التطبيقات "call" ‫16 لكل 100 ثانية لا ينطبق لا 2 لكل مشروع

حدود الشبكات

للاطّلاع على معلومات حول Firebase (الجيل الثاني) طلبات الشبكات و حدود عرض النطاق الترددي، يُرجى الرجوع إلى حدود الشبكات.

تنطبق حدود الشبكات التالية على Firebase (الجيل الأول):

  • الاتصالات الصادرة في الثانية لكل مثيل: 500 (لا يمكن زيادتها)
  • عمليات التحويل الصادرة باستخدام نظام أسماء النطاقات (DNS) في الثانية لكل مثيل: 100 (لا يمكن زيادتها)
  • الحدّ الأقصى للحِزم في الثانية لكل مثيل: 80,000
  • الحدّ الأقصى للوحدات في الثانية لكل مثيل: 100,000,000

قابلية التطور

Firebase التي يتم استدعاؤها من خلال HTTP تتوسّع بسرعة للتعامل مع حركة البيانات الواردة، بينما تتوسّع الدوال التي تعمل في الخلفية بشكل تدريجي أكثر. تعتمد قدرة الدالة على التوسّع على بعض العوامل، بما في ذلك:

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

تخضع الدوال التي تعمل في الخلفية لحدود إضافية، كما هو موضّح أدناه. لا تنطبق هذه الحدود على دوال HTTP من الجيل الأول.

حصص إضافية للدوال التي تعمل في الخلفية

الحصة الوصف الحدّ الأقصى المسموح به يمكن زيادته النطاق إصدار المنتج
الحدّ الأقصى لعمليات الاستدعاء المتزامنة الحدّ الأقصى لعمليات الاستدعاء المتزامنة لدالة واحدة
مثال: إذا كانت معالجة كل حدث تستغرق 100 ثانية، سيتم تقييد معدّل الاستدعاء بـ 30 في الثانية في المتوسط
3,000 نعم لكل دالة الجيل الأول فقط
الحدّ الأقصى لمعدّل الاستدعاء الحدّ الأقصى لمعدّل الأحداث التي تتم معالجتها بواسطة دالة واحدة
مثال: إذا كانت معالجة حدث تستغرق 100 ملي ثانية، سيتم تقييد معدّل الاستدعاء بـ 1,000 في الثانية حتى إذا لم تتم معالجة سوى 100 طلب، في المتوسط، بالتوازي
‫1,000 في الثانية لا لكل دالة الجيل الأول فقط
الحدّ الأقصى لحجم بيانات الأحداث المتزامنة الحدّ الأقصى لإجمالي حجم الأحداث الواردة إلى عمليات الاستدعاء المتزامنة لدالة واحدة
مثال: إذا كان حجم الأحداث 1 ميغابايت واستغرقت معالجتها 10 ثوانٍ، سيكون المعدّل المتوسّط حدثًا واحدًا في الثانية، لأنّه لن تتم معالجة الحدث الحادي عشر إلا بعد انتهاء معالجة أحد الأحداث العشرة الأولى
‫10 ميغابايت لا لكل دالة الجيل الأول والجيل الثاني
الحدّ الأقصى لسرعة معالجة البيانات للأحداث الواردة الحدّ الأقصى لسرعة معالجة البيانات للأحداث الواردة إلى دالة واحدة
مثال: إذا كان حجم الأحداث 1 ميغابايت، يمكن أن يكون معدّل الاستدعاء 10 في الثانية كحد أقصى، حتى إذا انتهت الدوال في غضون 100 ملي ثانية
‫10 ميغابايت في الثانية لا لكل دالة الجيل الأول والجيل الثاني

عند بلوغ الحدّ الأقصى المسموح به للحصة

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

لزيادة الحصص فوق القيم التلقائية المُدرَجة هنا، انتقِل إلى Firebase صفحة الحصص، واختَر الحصص التي تريد تعديلها، وانقر على تعديل الحصص، وأدخِل معلومات المستخدم إذا طُلب منك ذلك، ثم أدخِل الحدّ الأقصى الجديد لكل حصة اخترتها.

الحدود القصوى للحصص في عملية النشر باستخدام Firebase CLI

بالنسبة إلى كل دالة ينشرها Firebase CLI، تتأثر أنواع القيود على المعدل والحدود الزمنية التالية:

  • طلبات البيانات من واجهة برمجة التطبيقات (القراءة): طلب واحد لكل عملية نشر، بغض النظر عن عدد الدوال
    • الحدّ الأقصى المسموح به: 5,000 لكل 100 ثانية
  • طلبات البيانات من واجهة برمجة التطبيقات (الكتابة): طلب واحد لكل دالة
    • الحدّ الأقصى المسموح به: 80 لكل 100 ثانية

يمكنك أيضًا الاطّلاع على مرجع Firebase CLI.