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

بما أن واجهة برمجة تطبيقات Google Drive هي خدمة مشتركة، نطبِّق الحصص والقيود على التأكد من استخدامه بشكل عادل من قبل جميع المستخدمين وحماية الأداء العام من نظام Google Workspace.

يتم تسليم الإشعارات إلى العنوان المحدد عندما لا يتم احتساب فتح قناة إشعارات ضمن حدود حصتك. ومع ذلك، المكالمات الواردة إلى changes.watch channels.stop و يتم احتساب files.watch طريقة من حصتك.

إذا تجاوزت إحدى الحصص، ستتلقّى 403: User rate limit exceeded. استجابة رمز حالة HTTP. يتم التحقق من الحدود الإضافية لحدود المعدّل على قد تنشئ خلفية Drive أيضًا 429: Too many requests الاستجابة. وفي هذه الحالة، يجب استخدام خوارزمية الرقود الأسي الثنائي. الخوارزمية وإعادة المحاولة لاحقًا. بشرط أن تكون داخل الحصص في الدقيقة أدناه، فليس هناك حد لعدد الطلبات التي يمكنك تقديمها في اليوم.

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

الحصص
طلبات البحث
في كل 60 ثانية 12,000
لكلّ 60 ثانية لكلّ مستخدِم 12,000

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

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

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

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

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

  1. أرسِل طلبًا إلى Google Drive 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 عبارة عن عدد عشوائي بالمللي ثانية أقل من أو تساوي 1000. ويساعد ذلك في تجنب الحالات التي تتم فيها مزامنة العديد من البرامج بواسطة بعض المواقف وإعادة المحاولة دفعة واحدة، وإرسال الطلبات في أوقات متزامنة أمواج. تتم إعادة احتساب قيمة random_number_milliseconds بعد كل قيمة إعادة محاولة الطلب.
  • تتراوح مدة maximum_backoff عادةً بين 32 أو 64 ثانية. يجب أن تكون القيمة المناسبة حسب حالة الاستخدام.

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

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

التسعير

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

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

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

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

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