بما أنّ Google Vault API هي خدمة مشترَكة، نفرض حصصًا وحدودًا لضمان استخدامها بشكل عادل من قِبل جميع المستخدمين وحماية سلامة نظام Google Workspace بشكل عام.
حدود المنتجات
لا يمكنك إضافة أكثر من 20 عملية تصدير قيد التنفيذ على مستوى مؤسستك.
حصص طلبات البيانات من واجهة برمجة التطبيقات
يُسمح لكل مؤسسة بإجراء 600 عملية قراءة للمسائل القانونية في الدقيقة الواحدة، وذلك في جميع المشاريع والمستخدمين، بما في ذلك الطلبات من خلال Vault API وvault.google.com.
تعرض الجداول التالية حدود الطلبات في الدقيقة لكل مشروع:
| قراءة عدد الطلبات في الدقيقة الواحدة لكل مشروع | |
|---|---|
| التصدير والمسألة القانونية وطلب البحث المحفوظ | 120 |
| تعليق | 228 |
| عملية تستغرق وقتًا طويلاً | 300 |
| كتابة طلبات في الدقيقة الواحدة لكل مشروع | |
|---|---|
| تصدير | 20 |
| تعليق | 60 |
| أذونات المسائل | 30 |
| Matter | 60 |
| طلب البحث المحفوظ | 45 |
| طلبات البحث (العدد) في الدقيقة الواحدة لكل مشروع | |
|---|---|
| عدد عمليات البحث | 20 |
مقدار استخدام الحصة حسب الطريقة
تعتمد الحصة المستخدَمة في الطلب على الطريقة التي تم استدعاؤها. يسرد الجدول التالي استخدام الحصة لكل طريقة:
| الطريقة | تكاليف الحصة |
|---|---|
matters.closematters.creatematters.deletematters.reopenmatters.updatematters.undelete
|
مسألة قانونية واحدة مقروءة مسألة قانونية واحدة مكتوبة |
matters.count |
عدد واحد |
matters.get |
تمت قراءة مسألة قانونية واحدة |
matters.list |
10 مسألة قانونية |
matters.addPermissionsmatters.removePermissions
|
1 matter read 1 matter write 1 matter permissions write |
matters.exports.create |
عملية قراءة واحدة لعملية تصدير 10 عمليات كتابة لعملية تصدير |
matters.exports.delete |
عملية كتابة تصدير واحدة |
matters.exports.get |
تمت قراءة عملية تصدير واحدة |
matters.exports.list |
5 عمليات قراءة للتصدير |
matters.holds.addHeldAccountsmatters.holds.creatematters.holds.deletematters.holds.removeHeldAccountsmatters.holds.update
|
عملية قراءة واحدة للمسألة القانونية عملية تعديل واحدة للمسألة القانونية عملية قراءة واحدة لعملية التجميد عملية تعديل واحدة لعملية التجميد |
matters.holds.list |
1 matter read 3 hold reads |
matters.holds.accounts.creatematters.holds.accounts.deletematters.holds.accounts.list
|
عملية قراءة واحدة للمسألة القانونية عملية تعديل واحدة للمسألة القانونية عملية قراءة واحدة لعملية التجميد عملية تعديل واحدة لعملية التجميد |
matters.savedQueries.creatematters.savedQueries.delete
|
1 عملية قراءة في قضية 1 عملية كتابة في قضية 1 عملية قراءة في طلب بحث محفوظ 1 عملية كتابة في طلب بحث محفوظ |
matters.savedQueries.get |
تمت قراءة مستند واحد تمت قراءة طلب بحث محفوظ واحد |
matters.savedQueries.list |
قراءة واحدة للمسألة 3 عمليات قراءة لطلبات البحث المحفوظة |
operations.get |
عملية قراءة واحدة لعملية طويلة الأمد |
حلّ أخطاء الحصة المستندة إلى الوقت
إذا تجاوزت الحصة المحدّدة لكل دقيقة أو لكل مؤسسة، ستتلقّى عادةً استجابة برمز حالة HTTP 429: Too many requests.
بالنسبة إلى جميع الأخطاء المستندة إلى الوقت (بحد أقصى N طلب في كل X دقيقة)، ننصح بأن يرصد الرمز البرمجي الاستثناء ويستخدم تراجعًا أسيًا مقتطعًا للتأكّد من أنّ أجهزتك لا تُحمّل عبئًا مفرطًا.
التمهّل الأسي هو استراتيجية معيارية للتعامل مع الأخطاء في تطبيقات الشبكة. تعيد خوارزمية الرقود الأسي الثنائي محاولة إرسال الطلبات باستخدام فترات انتظار متزايدة بشكل أسي بين الطلبات، وذلك حتى بلوغ الحد الأقصى لوقت الرقود الأسي الثنائي. إذا استمر تعذّر تنفيذ الطلبات، من المهم زيادة حالات التأخير بين الطلبات بمرور الوقت إلى أن يتم تنفيذ الطلب بنجاح.
مثال على الخوارزمية
تعيد خوارزمية الرقود الأسي الثنائي محاولة إرسال الطلبات بشكل أسي، ما يؤدي إلى زيادة وقت الانتظار بين عمليات إعادة المحاولة إلى أن يصل إلى الحد الأقصى لوقت الرقود الأسي الثنائي. على سبيل المثال:
- إرسال طلب إلى Google Vault API
- إذا تعذّر تنفيذ الطلب، انتظِر لمدة 1 +
random_number_millisecondsوأعِد محاولة تنفيذ الطلب. - في حال تعذّر إرسال الطلب، انتظِر لمدة 2 +
random_number_millisecondsوأعِد محاولة إرساله. - في حال تعذّر تنفيذ الطلب، انتظِر 4 ثوانٍ +
random_number_millisecondsثم أعِد محاولة تنفيذ الطلب. - وهكذا، حتى
maximum_backoffمرة. - واصِل الانتظار وإعادة المحاولة حتى بلوغ الحدّ الأقصى لعدد المحاولات، ولكن لا تزد فترة الانتظار بين المحاولات.
where:
- يبلغ وقت الانتظار
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 ثانية بعد الوصول إلى هذه القيمة. في مرحلة ما، يجب منع البرامج من إعادة المحاولة إلى أجل غير مسمّى.
يعتمد وقت الانتظار بين عمليات إعادة المحاولة وعددها على حالة الاستخدام وظروف الشبكة.
طلب زيادة الحصة
بناءً على استخدامك للموارد في مشروعك، قد تحتاج إلى طلب تعديل الحصة. تُعدّ طلبات البيانات من واجهة برمجة التطبيقات التي يرسلها حساب خدمة على أنّها تستخدم حسابًا واحدًا. لا يضمن التقدم بطلب للحصول على حصة معدَّلة الموافقة. قد تستغرق طلبات تعديل الحصة التي تؤدي إلى زيادة كبيرة في قيمة الحصة وقتًا أطول للموافقة عليها.
لا تتساوى جميع المشاريع في الحصص. مع زيادة استخدامك لخدمات Google Cloud بمرور الوقت، قد تحتاج إلى زيادة قيم الحصة. إذا كنت تتوقّع زيادة ملحوظة في الاستخدام قريبًا، يمكنك طلب تعديلات على الحصة بشكل استباقي من صفحة الحصص والحدود القصوى للنظام في "وحدة تحكّم Google Cloud".
لمزيد من المعلومات، يُرجى الاطّلاع على المراجع التالية:
الأسعار
يمكن لعملاء Google Workspace استخدام Google Vault API بدون أي تكلفة إضافية.