این راهنما را دنبال کنید تا با محدودیتها و سهمیهها هنگام کار با Data Manager API آشنا شوید.
حدود پروژه
برای استفاده از Data Manager API به پروژه Google Cloud نیاز دارید. پروژه Google Cloud کارخواه OAuth و اطلاعات اعتباری را که برای اصالتسنجی درخواستهای API استفاده میکنید ارائه میدهد.
Data Manager API محدودیتهای نرخ را بر هر پروژه Google Cloud اعمال میکند که براساس سرویس و نوع عملیات (خواندن درمقابل تغییر دادن) تفکیک شدهاند:
| سرویس | عملیات | درخواست در روز | درخواست در دقیقه |
|---|---|---|---|
IngestionService |
جهش (نوشتن) | ۱۰۰٬۰۰۰ | ۳۰۰ |
IngestionService |
خواندن | ۱۰۰٬۰۰۰ | ۳۰۰ |
| همه سرویسهای دیگر ترکیبشده | جهش (نوشتن) | ۵۰٬۰۰۰ | ۳۰۰ |
| همه سرویسهای دیگر ترکیبشده | خواندن | ۵۰٬۰۰۰ | ۳۰۰ |
درخواستهایی که از حدود فراتر میروند با خطای RESOURCE_EXHAUSTED
و وضعیت اچتیتیپی 429 Too Many Requests رد میشوند.
میتوانید با کاهش فعالانه تعداد درخواستها و محدود کردن QPS از سمت کارخواه، کنترل برنامهتان را بهدست بگیرید و محدودیتهای نرخ را کاهش دهید. همچنین میتوانید هشدارها و نظارت بر سهمیه را در کنسول Google Cloud راهاندازی کنید تا قبلاز اینکه برنامهتان به محدودیتهایش برسد، اعلان دریافت کنید.
نامهای سهمیه
هر حد مجاز با نام حد مجاز سهمیه و سنجهای در Google Cloud مطابقت دارد. وقتی درخواستی از حد مجاز فراتر میرود، Data Manager API
نام حد مجاز سهمیه را در محموله جزئیات استاندارد ErrorInfo
تحت metadata.quota_limit برمیگرداند:
| نام حد مجاز سهمیه | سرویس | عملیات | پنجره | حد |
|---|---|---|---|---|
IngestionMutateRequestsPerDayPerProject |
IngestionService |
جهش | روز | ۱۰۰٬۰۰۰ |
IngestionMutateRequestsPerMinutePerProject |
IngestionService |
جهش | دقیقه | ۳۰۰ |
IngestionReadRequestsPerDayPerProject |
IngestionService |
خواندن | روز | ۱۰۰٬۰۰۰ |
IngestionReadRequestsPerMinutePerProject |
IngestionService |
خواندن | دقیقه | ۳۰۰ |
ManagementMutateRequestsPerDayPerProject |
همه سرویسهای دیگر | جهش | روز | ۵۰٬۰۰۰ |
ManagementMutateRequestsPerMinutePerProject |
همه سرویسهای دیگر | جهش | دقیقه | ۳۰۰ |
ManagementReadRequestsPerDayPerProject |
همه سرویسهای دیگر | خواندن | روز | ۵۰٬۰۰۰ |
ManagementReadRequestsPerMinutePerProject |
همه سرویسهای دیگر | خواندن | دقیقه | ۳۰۰ |
metadata.quota_limit را در بار داده ErrorInfo بررسی کنید تا
بین خطاهای حد روزانه و حد دقیقهای تمایز قائل شوید و تعیین کنید که آیا باید
بهطور موقت مکث کنید و با عقبنشینی دوباره امتحان کنید، یا تا زمانی که سهمیه روزانه بازنشانی شود مکث کنید.
برای جزئیات، خطاهای حد نرخ و سهمیه را ببینید.
مدیریت حدود نرخ و همزمانی
برای بهحداکثر رساندن توان عملیاتی بدون فراتر رفتن از سهمیههای پروژه، این رهنمودها را دنبال کنید:
سوابق دستهای در هر درخواست: تا جایی که ممکن است سوابق بیشتری را در هر درخواست تا حدود درخواست (تا ۱۰٬۰۰۰ منبع
AudienceMemberیا ۲٬۰۰۰ منبعEventدر هر درخواست) اضافه کنید.ارسال حداکثر ۱۰ درخواست همزمان: برای کاهش کل زمان انتقال بدون فراتر رفتن از حد مجاز ۳۰۰ درخواست در دقیقه، حداکثر ۱۰ درخواست همزمان به
IngestionServiceارسال کنید.امتحان مجدد محدودیتهای نرخ دقیقهای با عقبنشینی: اگر درخواستی با
RESOURCE_EXHAUSTED(HTTP429) ناموفق باشد وmetadata.quota_limitنشاندهنده محدودیت دقیقهای باشد (مانندIngestionMutateRequestsPerMinutePerProject)، بااستفاده از عقبنشینی نمایی با لرزش دوباره امتحان کنید (برای مثال، منتظر ماندن بهمدت ۱ ثانیه، ۲ ثانیه، و ۴ ثانیه بین دفعات امتحان مجدد).مکث درصورت اتمام سهمیه روزانه: اگر
metadata.quota_limitنشاندهنده حد روزانه (مثلIngestionMutateRequestsPerDayPerProject) است، فوراً دوباره امتحان نکنید. درخواستها را تا زمان بازنشانی سهمیه روزانه در نیمهشب بهوقت اقیانوس آرام موقتاً متوقف کنید.
حدود درخواست
حدود درخواستهای خاص در اینجا آمده است:
IngestAudienceMembersRequestوRemoveAudienceMembersRequest:۱۰٬۰۰۰ منبع
AudienceMemberدر فهرستaudience_members۱۰ شناسه کاربر در
UserDataبرایAudienceMember۱۰ منبع
Destinationدر فهرستdestinations
RemoveAllAudienceMembersRequest:- ۱۰ منبع
Destinationدر فهرستdestinations
- ۱۰ منبع
-
۲٬۰۰۰ منبع
Eventدر فهرستevents۱۰ شناسه کاربر در
UserDataبرایEvent۱۰ منبع
Destinationدر فهرستdestinations