در حالی که اکثر سرویسها APIهای همزمانی ارائه میدهند که شما را ملزم به ارسال درخواست و سپس انتظار برای پاسخ میکنند، BatchJobService راهی برای انجام دستهای از عملیات روی چندین سرویس بدون انتظار همزمان برای تکمیل عملیات فراهم میکند.
برخلاف عملیات تغییر شکل مختص سرویس، یک کار واحد در BatchJobService میتواند روی مجموعهای ترکیبی از کمپینها، گروههای تبلیغاتی، تبلیغات، معیارها، برچسبها و موارد فید عمل کند. کارهای ارسال شده به صورت موازی اجرا میشوند و BatchJobService به طور خودکار عملیاتی را که به دلیل خطاهای گذرا مانند خطاهای محدودیت نرخ شکست میخورند، دوباره امتحان میکند. API تبلیغات گوگل همچنان هر عملیات را به عنوان محدودیت عملیات روزانه شما در نظر میگیرد و دستورالعملهای شمارش عملیات API را دنبال میکند.
BatchJobService همچنین به شما امکان میدهد از شناسههای موقت در درخواستهای خود استفاده کنید تا بتوانید عملیات وابسته را در یک کار واحد ارسال کنید.
عملیات
BatchJobService از تمام عملیات ذکر شده در MutateOperation پشتیبانی میکند، به جز چند استثنای مهم.
از آنجا که API گوگل ادز تمام عملیات یک کار را با فعال بودن خطای جزئی اجرا میکند، اگر یک کار لغو شود یا عملیاتهای جداگانه با شکست مواجه شوند، عملیاتی که موفق بودهاند به حالت قبل باز نمیگردند .
عملیات زیر در MutateOperation باید اتمی باشند و بنابراین، از شکست جزئی پشتیبانی نمیکنند و در کارهای دستهای پشتیبانی نمیشوند . از اضافه کردن این عملیات به کارهای خود خودداری کنید، در درخواستهای خود partial_failure را روی false تنظیم کنید و به جای آن از متد mutate در GoogleAdsService استفاده کنید.
عملیات پشتیبانی نشده در BatchJobService
-
CampaignConversionGoalOperation -
ConversionGoalCampaignConfigOperation -
CustomConversionGoalOperation -
CustomerConversionGoalOperation -
CustomerOperation