عملکرد

کتابخانه مشتری Perl تعامل با Google Ads API را با حداقل پیکربندی ازجانب شما آسان می‌کند. بااین‌حال، عملکرد به‌طور قابل‌توجهی به نحوه استفاده و ادغام کتابخانه بستگی دارد.

اکثر روال‌های مطلوب عمومی برای همه زبان‌ها قابل‌اجرا هستند. این صفحه راهنمای عملکرد مختص Perl را پوشش می‌دهد.

نمایه‌سازی برنامه

نمایه برنامه‌تان را برای استفاده از واحد پردازش مرکزی و حافظه بررسی کنید تا گلوگاه‌های عملکرد را شناسایی کنید. Devel::NYTProf یک نمایه‌ساز کد منبع Perl با ویژگی‌های غنی است که می‌توانید از آن برای تجزیه‌وتحلیل زمان اجرا استفاده کنید.

نسخه Perl

به‌طور منظم به نسخه جدیدتر Perl ارتقا دهید تا از بهبودهای عملکرد زمان اجرا بهره‌مند شوید. جدیدترین نسخه را از نسخه‌های منبع CPAN Perl بارگیری کنید و حداقل نسخه موردنیاز برای کتابخانه را در پیش‌نیازهای README بررسی کنید.

ثبت

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

برای جزئیات بیشتر درباره پیکربندی ثبت‌کننده‌های خلاصه و جزئیات، راهنمای ثبت گزارش را ببینید.

SearchStream دربرابر «جستجو»

Google Ads API دو روش اصلی برای بازیابی اشیاء ارائه می‌دهد: Search (که از صفحه‌بندی استفاده می‌کند) و SearchStream (که از جاری‌سازی استفاده می‌کند). SearchStream عملکرد بهتری نسبت‌به Search ارائه می‌دهد، هرچند در سناریوهای خاصی ممکن است Search ترجیح داده شود.

برای مقایسه دقیق این دو روش، راهنمای جاری‌سازی را ببینید.

بهینه‌سازی و دسته‌بندی بار مفید

برای به‌حداقل رساندن سربار شبکه و مصرف حافظه:

  • فقط فیلدهای خاصی را که برنامه‌تان در پُرسمان‌های Google Ads Query Language (GAQL) نیاز دارد درخواست کنید.
  • چندین عملیات تغییر را در یک درخواست mutate گروه‌بندی کنید، به‌جای اینکه برای هر تغییر درخواست‌های جداگانه ارسال کنید.

مهلت HTTP

کتابخانه کارخواه Perl تنظیماتی را برای پیکربندی کردن زمان‌اتمام HTTP در سطح کارخواه ارائه می‌دهد:

my $api_client = Google::Ads::GoogleAds::Client->new({
  # Set HTTP timeout to 5 minutes (300 seconds).
  http_timeout => 300,
});

مقدار پیش‌فرض 3600 ثانیه (۱ ساعت) است که براساس ثابت DEFAULT_HTTP_TIMEOUT در Constants.pm تنظیم شده است. اگر لازم است محدودیت کوتاه‌تری برای حداکثر زمان فراخوانی میانای برنامه‌سازی کاربردی اعمال کنید، زمان اتمام سفارشی کارخواه را تنظیم کنید.

می‌توانید زمان اتمام را روی ۲ ساعت یا بیشتر تنظیم کنید، اما ممکن است API همچنان درخواست‌های بسیار طولانی را متوقف کند و خطای DEADLINE_EXCEEDED را برگرداند. اگر با این خطا مواجه شدید، درخواست را به بخش‌های کوچک‌تر تقسیم کنید و آن‌ها را به‌صورت موازی اجرا کنید. این کار از شرایطی که در آن درخواست طولانی‌مدت ناموفق می‌شود و تنها راه بازیابی، راه‌اندازی مجدد درخواست از ابتدا است، جلوگیری می‌کند.