محدودیتها و سهمیهها از زیرساخت Google در برابر فرآیند خودکاری که از گزارشهای API به روشی نامناسب استفاده میکند محافظت میکند. درخواستهای بیش از حد از یک API ممکن است ناشی از یک اشتباه تایپی بیضرر باشد، یا ممکن است ناشی از طراحی ناکارآمد سیستمی باشد که تماسهای API بیضروری را ایجاد میکند. صرف نظر از علت، مسدود کردن ترافیک از یک منبع خاص پس از رسیدن به سطح مشخصی برای سلامت کلی سیستم Google Workspace ضروری است. این تضمین می کند که اقدامات یک توسعه دهنده نمی تواند تأثیر منفی بر جامعه بزرگتر بگذارد.
در صورتی که درخواست API شما ناموفق باشد، پاسخ کد وضعیت HTTP را دریافت خواهید کرد. کد وضعیت 403 دارای اطلاعات خطا در مورد ورودی نادرست است و کد وضعیت HTTP 503 دارای اطلاعات خطایی است که نشان می دهد از کدام سهمیه های API فراتر رفته است. این پاسخ ها به برنامه سفارشی شما اجازه می دهد تا این خطاها را شناسایی کرده و اقدامات مناسب را انجام دهد.
اگر درخواستهای شما باید در یک بازه زمانی مشخص تکمیل شوند، درخواستهای خود را به صورت موازی ارسال کنید یا از چندین رشته در برنامه جاوا یا سی شارپ خود استفاده کنید. نمونه ای از درخواست های موازی، درخواست دسته های کوچک ایمیل از کاربران مختلف به جای افزودن یا حذف تعداد زیادی ایمیل از یک کاربر به طور همزمان است. در مورد موضوعات، سعی کنید با 10 رشته شروع کنید، یک رشته برای هر ایمیل کاربر. توجه داشته باشید، توصیه رشته دارای معاوضههایی است و برای همه موقعیتهای API مفید نیست. اگر تعداد درخواست ها خیلی زیاد شود، خطاهای سهمیه ای رخ می دهد.
برای همه خطاهایی که مبتنی بر زمان هستند (حداکثر N چیز برای N ثانیه در هر رشته)، به ویژه خطاهای کد وضعیت 503، توصیه میکنیم کد شما استثنا را بگیرد و با استفاده از یک الگوریتم عقبنشینی نمایی ، قبل از امتحان مجدد خطای ناموفق، کمی صبر کنید. زنگ زدن. یک مثال Reports API برای یک رشته این است که 5 ثانیه صبر کنید و تماس ناموفق را دوباره امتحان کنید. اگر درخواست موفقیت آمیز بود، این الگو را برای رشته های دیگر تکرار کنید. اگر درخواست دوم موفقیت آمیز نبود، برنامه شما باید تعداد دفعات درخواست را کاهش دهد تا زمانی که تماس موفقیت آمیز باشد. به عنوان مثال، 5 ثانیه تاخیر اولیه را به 10 ثانیه افزایش دهید و دوباره تماس ناموفق خود را دوباره امتحان کنید. همچنین، در مورد محدودیت تلاش مجدد تصمیم بگیرید. به عنوان مثال، قبل از اینکه برنامه شما خطایی را به کاربر بازگرداند، یک درخواست را 5 تا 7 بار با زمانهای تاخیر متفاوت امتحان کنید.
دسته بندی های محدود API | محدودیت ها |
---|---|
نرخ QPS و QPD را گزارش کنید | API تعداد درخواستهای پروژه Google Cloud شما را محدود میکند. مقدار پیش فرض تنظیم شده در کنسول Google Cloud 2400 پرس و جو در دقیقه برای هر کاربر در هر پروژه Google Cloud است. میتوانید این محدودیت را از صفحه Admin SDK API Quotas پروژه Google Cloud خود افزایش دهید. اگر از این محدودیت ها فراتر رفت، سرور یک کد وضعیت HTTP 503 را برمی گرداند. هنگام امتحان مجدد درخواست های خود از الگوریتم عقب نشینی نمایی استفاده کنید. |
دسته های سهمیه API | سهمیه ها |
حداکثر نتایج | تعداد رکوردهای فهرست شده در هر صفحه از پاسخ API از 1 تا 1000 رویداد است. پیش فرض 1000 رکورد است. |
انواع دیگر محدودیت ها | محدودیت ها و دستورالعمل ها |
---|---|
فرمت داده، پیش فرض | فرمت پیش فرض داده JSON است. API از فرمت Atom نیز پشتیبانی می کند. |
درخواست های غیرمجاز | Google به درخواستهای غیرمجاز به API اجازه نمیدهد. در صورت عدم ارائه کد مجوز، درخواست غیرمجاز تلقی می شود. برای اطلاعات بیشتر، مجوز درخواستها را ببینید. |
پیام های هشدار دهنده |
|