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

بما أنّ واجهة برمجة التطبيقات Drive labels API هي خدمة مشترَكة، نطبّق حصصًا وقيودًا لضمان استخدام جميع المستخدمين لها بشكل عادل ولحماية السلامة العامة لمنظومة Google Workspace المتكاملة.

إذا تجاوزت إحدى الحصص، ستتلقّى بشكل عام الاستجابة 429: Too many requests لحالة HTTP. إذا حدث ذلك، يجب استخدام خوارزمية التراجع الأسي وإعادة المحاولة لاحقًا. ليس هناك حد أقصى لعدد الطلبات التي يمكنك إجراؤها يوميًا، شرط ألا تتجاوز الحصص المحددة لكل دقيقة أدناه.

يوضح الجدول التالي تفاصيل حدود الطلبات:

الحصص
قراءة الطلبات
لكل مستخدم لكل مشروع 600 (طلب في الثانية)
كتابة الطلبات
لكل مستخدم لكل مشروع 300 (طلب في الثانية)

حلّ أخطاء الحصص المستندة إلى الوقت

بالنسبة إلى جميع الأخطاء المستندة إلى الوقت (بحد أقصى N طلب في X دقيقة)، ننصح بأن يلتقط الرمز الخاص بك الاستثناء ويستخدم تراجع أسّي مقتطع للتأكّد من أنّ الأجهزة لا تحمّل حِملًا زائدًا.

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

مثال على الخوارزمية

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

  1. يمكنك تقديم طلب إلى Drive Categories API.
  2. إذا تعذّر إجراء الطلب، يُرجى الانتظار 1 + random_number_milliseconds ثم إعادة محاولة الطلب.
  3. إذا تعذّر إجراء الطلب، انتظر 2 + random_number_milliseconds ثم أعِد محاولة إجراء الطلب.
  4. إذا تعذّر إجراء الطلب، انتظر 4 + random_number_milliseconds ثم أعِد محاولة إجراء الطلب.
  5. وهكذا، حتى مرة واحدة (maximum_backoff).
  6. يمكنك مواصلة الانتظار وإعادة المحاولة لتصل إلى الحد الأقصى لعدد عمليات إعادة المحاولة، ولكن لا تزيد فترة الانتظار بين عمليات إعادة المحاولة.

المكان:

  • يبلغ وقت الانتظار min(((2^n)+random_number_milliseconds), maximum_backoff)، مع زيادة n بمقدار 1 لكل تكرار (طلب).
  • random_number_milliseconds هو عدد عشوائي بالمللي ثانية أقل من أو يساوي 1,000. ويساعد ذلك في تجنُّب الحالات التي تتم فيها مزامنة العديد من البرامج في بعض الحالات، ثم إعادة المحاولة في آنٍ واحد وإرسال الطلبات في موجات متزامنة. يُعاد احتساب قيمة random_number_milliseconds بعد كل طلب لإعادة المحاولة.
  • تتراوح مدّة "maximum_backoff" عادةً بين 32 أو 64 ثانية. وتعتمد القيمة المناسبة على حالة الاستخدام.

يمكن للعميل متابعة إعادة المحاولة بعد الوصول إلى الوقت maximum_backoff. لا تحتاج عمليات إعادة المحاولة بعد هذه المرحلة إلى مواصلة زيادة وقت التراجع. على سبيل المثال، إذا كان العميل يستخدم وقت maximum_backoff مدّته 64 ثانية، يمكن للعميل إعادة المحاولة كل 64 ثانية بعد الوصول إلى هذه القيمة. وفي مرحلة ما، يجب أن يُمنع العملاء من إعادة المحاولة إلى أجل غير مسمى.

يعتمد وقت الانتظار بين عمليات إعادة المحاولة وعدد هذه العمليات على حالة الاستخدام وحالة الشبكة.

السعر

تتوفّر جميع استخدامات Drive labels API بدون أي تكلفة إضافية. لا يؤدي تجاوز حدود طلبات الحصة إلى تحصيل رسوم إضافية ولا يتم تحصيل فواتير من حسابك.

طلب زيادة الحصة

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

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

لمزيد من المعلومات، اطّلِع على المراجع التالية: