Biblioteka klienta Perl ułatwia interakcję z interfejsem Google Ads API przy minimalnym wysiłku. z Twojej strony. Skuteczność zależy jednak w dużym stopniu od tego, biblioteka jest używana i zintegrowana.
Większość sprawdzonych metod dotyczą wszystkich języków. W tym przewodniku omawiamy te, które są która jest specyficzna dla języka Perl.
Profilowanie aplikacji
Profiluj aplikację pod kątem wykorzystania procesora i pamięci, aby określić jej wydajność które powodują wąskie gardła. Devel::NYTProf to świetny program profilujący kod źródłowy Perl z wieloma funkcjami, który możesz wypróbować.
Wersja Perl
Dobrą praktyką jest regularne uaktualnianie wersji Perl do nowszej wersji, zapewnia większą ogólną skuteczność. Tutaj znajdziesz informacje najnowszą wersję Perl oraz minimalną wersję wymaganą przez bibliotekę .
Logowanie
Szczegółowe logowanie może spowodować nałożenie kary na poważnymi karami związanymi z czasem wykonywania i pamięć
konsumpcją treści. Zalecamy ustawienie poziomu logowania na WARN
dla każdego kodu w
produkcji.
Więcej informacji znajdziesz w przewodniku dotyczącym logowania. szczegóły konfiguracji dzienników podsumowania i szczegółów.
Metoda Search lub SearchStream
Interfejs Google Ads API udostępnia 2 główne metody pobierania obiektów:
Search
(z podziałem na strony) oraz
SearchStream
(który używa strumieniowania).
Metoda SearchStream
zapewnia większą skuteczność niż metoda Search
, ale mogą wystąpić tego typu problemy,
w pewnych sytuacjach, w których metoda Search
może być preferowana.
Więcej informacji na temat obu tych metod znajdziesz tutaj.
Przekroczenie limitu czasu HTTP
Biblioteka klienta Perl umożliwia ustawianie limitów czasu oczekiwania HTTP poziom:
my $api_client = Google::Ads::GoogleAds::GoogleAdsClient->new({
# Set HTTP timeout to 5 minutes.
http_timeout => 300
});
Wartość domyślna jest ustawiana na podstawie ustawienia DEFAULT_HTTP_TIMEOUT
w
Constants.pm.
Ustaw niższą wartość, jeśli
muszą egzekwować krótszy limit maksymalnego czasu wywołania interfejsu API.
Możesz ustawić limit czasu na co najmniej 2 godziny, ale nadal może to spowodować przekroczenie limitu czasu interfejsu API
bardzo długotrwałe żądania i zwracały błąd
Błąd DEADLINE_EXCEEDED
.
Jeśli napotkasz ten błąd, podziel żądanie i wykonaj fragmenty w
równoległe; Pozwala to uniknąć sytuacji, w której długo trwające żądanie zakończy się niepowodzeniem,
Jedynym sposobem na przywrócenie danych jest ponowne wywołanie żądania od początku.