Perl için istemci kitaplığı, minimum yapılandırmayla Google Ads API ile etkileşimleri kolaylaştırır. Ancak performans, kitaplığın nasıl kullanıldığına ve entegre edildiğine büyük ölçüde bağlıdır.
Bu en iyi uygulamaların çoğu tüm diller için geçerlidir. Bu rehberde Perl'e özgü olanları ele alacağız.
Uygulamanızın profilini çıkarma
Performans darboğazlarını belirlemek için uygulamanızı hem CPU hem de bellek kullanımı açısından profilleyin. Devel::NYTProf, keşfedebileceğiniz güçlü ve zengin özelliklere sahip bir Perl kaynak kodu profilleyicisidir.
Perl sürümü
Genellikle daha iyi genel performans sundukları için düzenli olarak daha yeni bir Perl sürümüne geçmek iyi bir uygulamadır. En son Perl sürümü için buraya, kitaplığın gerektirdiği minimum sürüm için de bu sayfaya bakın.
Günlük Kaydı
Ayrıntılı günlük kaydı, önemli yürütme süresi cezalarına ve bellek tüketimine neden olabilir. Üretimdeki tüm kodlar için günlük kaydı düzeyini WARN
olarak ayarlamanızı öneririz.
Özet ve ayrıntı günlükleyicilerinin yapılandırması hakkında daha fazla bilgi için Günlük kaydı kılavuzuna bakın.
Search veya SearchStream yöntemi
Google Ads API, nesneleri almak için iki ana yöntem sağlar: Search
(sayfalandırma kullanılır) ve SearchStream
(akış kullanılır).
SearchStream
, Search
yöntemine kıyasla daha iyi performans sağlar ancak Search
yönteminin tercih edilebileceği belirli senaryolar olabilir.
Bu iki yöntem hakkında daha fazla bilgiyi burada bulabilirsiniz.
HTTP zaman aşımı
Perl istemci kitaplığı, istemci seviyesinde HTTP zaman aşımlarını ayarlamak için bir yüzey sağlar:
my $api_client = Google::Ads::GoogleAds::GoogleAdsClient->new({
# Set HTTP timeout to 5 minutes.
http_timeout => 300
});
Varsayılan değer, Constants.pm dosyasında DEFAULT_HTTP_TIMEOUT
ayarına göre belirlenir.
Bir API çağrısının maksimum süresi için daha kısa bir sınır uygulamanız gerekiyorsa daha düşük bir değer ayarlayın.
Zaman aşımını 2 saat veya daha fazla olarak ayarlayabilirsiniz ancak API, çok uzun süren isteklerin zaman aşımına uğramasına ve DEADLINE_EXCEEDED
hatası döndürmesine neden olabilir.
Bu hatayla karşılaşırsanız isteği bölün ve parçaları paralel olarak yürütün. Bu sayede, uzun süre çalışan bir isteğin başarısız olduğu ve tek kurtarma yönteminin isteği baştan tetiklemek olduğu durumlar önlenir.