محدودیت های استفاده

از آنجایی که رابط برنامه‌نویسی کاربردی برچسب‌های درایو (Drive Labels API) یک سرویس اشتراکی است، ما سهمیه‌ها و محدودیت‌هایی را اعمال می‌کنیم تا مطمئن شویم که همه کاربران به طور منصفانه از آن استفاده می‌کنند و از سلامت کلی اکوسیستم Google Workspace محافظت کنیم.

اگر از سهمیه تعیین‌شده تجاوز کنید، معمولاً با کد وضعیت HTTP با خطای 429: Too many requests مواجه خواهید شد. در این صورت، باید از الگوریتم بازگشت نمایی استفاده کنید و بعداً دوباره امتحان کنید. در صورتی که در محدوده سهمیه‌های دقیقه‌ای زیر بمانید، هیچ محدودیتی برای تعداد درخواست‌هایی که می‌توانید در روز انجام دهید وجود ندارد.

جدول زیر جزئیات محدودیت‌های درخواست را نشان می‌دهد:

سهمیه‌ها
درخواست‌های خواندن
به ازای هر کاربر در هر پروژه ۶۰۰ (پرس‌وجو در ثانیه)
درخواست‌ها را بنویسید
به ازای هر کاربر در هر پروژه ۳۰۰ (پرس‌وجو در ثانیه)

خطاهای سهمیه‌بندی مبتنی بر زمان را برطرف کنید

برای همه خطاهای مبتنی بر زمان (حداکثر N درخواست در هر X دقیقه)، توصیه می‌کنیم کد شما استثنا را دریافت کند و از یک backoff نمایی کوتاه شده استفاده کند تا مطمئن شود دستگاه‌های شما بار اضافی تولید نمی‌کنند.

بازگشت نمایی یک استراتژی استاندارد مدیریت خطا برای برنامه‌های شبکه است. یک الگوریتم بازگشت نمایی، درخواست‌ها را با استفاده از زمان انتظار بین درخواست‌ها که به صورت نمایی افزایش می‌یابد، تا حداکثر زمان بازگشت، دوباره امتحان می‌کند. اگر درخواست‌ها همچنان ناموفق باشند، مهم است که تأخیر بین درخواست‌ها به مرور زمان افزایش یابد تا درخواست موفقیت‌آمیز شود.

الگوریتم مثال

یک الگوریتم بازگشت نمایی، درخواست‌ها را به صورت نمایی دوباره امتحان می‌کند و زمان انتظار بین تلاش‌های مجدد را تا حداکثر زمان بازگشت افزایش می‌دهد. برای مثال:

  1. درخواستی به Drive Labels API ارسال کنید.
  2. اگر درخواست با شکست مواجه شد، ۱ + random_number_milliseconds صبر کنید و درخواست را دوباره امتحان کنید.
  3. اگر درخواست با شکست مواجه شد، به مدت ۲ + random_number_milliseconds صبر کنید و درخواست را دوباره امتحان کنید.
  4. اگر درخواست با شکست مواجه شد، به مدت ۴ + random_number_milliseconds صبر کنید و درخواست را دوباره امتحان کنید.
  5. و به همین ترتیب، تا زمان maximum_backoff .
  6. تا حداکثر تعداد دفعات تلاش مجدد، به انتظار و تلاش مجدد ادامه دهید، اما مدت زمان انتظار بین تلاش‌ها را افزایش ندهید.

کجا:

  • زمان انتظار min(((2^n)+random_number_milliseconds), maximum_backoff) است، که در آن n برای هر تکرار (درخواست) 1 واحد افزایش می‌یابد.
  • random_number_milliseconds یک عدد تصادفی میلی‌ثانیه کمتر یا مساوی ۱۰۰۰ است. این به جلوگیری از مواردی که بسیاری از کلاینت‌ها به دلیل برخی شرایط همگام‌سازی می‌شوند و همه به طور همزمان تلاش مجدد می‌کنند و درخواست‌ها را در امواج هماهنگ ارسال می‌کنند، کمک می‌کند. مقدار random_number_milliseconds پس از هر درخواست تلاش مجدد دوباره محاسبه می‌شود.
  • maximum_backoff معمولاً ۳۲ یا ۶۴ ثانیه است. مقدار مناسب به مورد استفاده بستگی دارد.

کلاینت می‌تواند پس از رسیدن به زمان maximum_backoff به تلاش مجدد ادامه دهد. تلاش‌های مجدد پس از این نقطه نیازی به افزایش مداوم زمان backoff ندارند. برای مثال، اگر یک کلاینت از زمان maximum_backoff برابر با ۶۴ ثانیه استفاده کند، پس از رسیدن به این مقدار، کلاینت می‌تواند هر ۶۴ ثانیه دوباره تلاش کند. در مقطعی، کلاینت‌ها باید از تلاش مجدد نامحدود منع شوند.

زمان انتظار بین تلاش‌های مجدد و تعداد تلاش‌های مجدد به مورد استفاده شما و شرایط شبکه بستگی دارد.

قیمت‌گذاری

تمام استفاده از Drive Labels API بدون هیچ هزینه اضافی در دسترس است. تجاوز از محدودیت درخواست سهمیه، هزینه اضافی ندارد و از حساب شما صورتحسابی کسر نمی‌شود.

درخواست افزایش سهمیه

بسته به میزان استفاده از منابع پروژه‌تان، ممکن است بخواهید درخواست تنظیم سهمیه بدهید. فراخوانی‌های API توسط یک حساب کاربری سرویس، به عنوان استفاده از یک حساب کاربری واحد در نظر گرفته می‌شوند. درخواست برای سهمیه تنظیم‌شده، تضمینی برای تأیید نیست. درخواست‌های تنظیم سهمیه که مقدار سهمیه را به میزان قابل توجهی افزایش می‌دهند، ممکن است مدت زمان بیشتری طول بکشد تا تأیید شوند.

همه پروژه‌ها سهمیه‌های یکسانی ندارند. با گذشت زمان و افزایش استفاده از گوگل کلود، ممکن است لازم باشد مقادیر سهمیه شما افزایش یابد. اگر انتظار افزایش قابل توجه استفاده در آینده را دارید، می‌توانید به صورت پیشگیرانه از صفحه سهمیه‌ها در کنسول گوگل کلود، درخواست تنظیم سهمیه کنید .

برای مطالعه بیشتر، به منابع زیر مراجعه کنید: