성능

Perl용 클라이언트 라이브러리는 Google Ads API와의 상호작용을 용이하게 해주며, 이 구성을 사용할 수도 있습니다 그러나 성능은 사용 및 통합됩니다.

대부분의 권장사항은 모든 언어에 적용됩니다 이 가이드에서는 있습니다.

애플리케이션 프로파일링

CPU 및 메모리 사용량을 모두 프로파일링하여 성능 파악 병목 현상입니다 Devel::NYTProf는 강력한 성능을 제공합니다. 살펴볼 수 있으며 기능이 풍부한 Perl 소스 코드 프로파일러를 살펴봅니다.

Perl 버전

평소처럼 최신 Perl 버전으로 정기적으로 업그레이드하는 것이 좋습니다. 전반적인 성능이 더 좋습니다 여기에서 이 라이브러리를 사용하기 위해 필요한 최소 버전을 페이지로 이동합니다.

로깅

광범위한 로깅은 상당한 실행 시간 페널티와 메모리를 초래할 수 있습니다. 있습니다 모든 코드의 로깅 수준을 WARN로 설정하는 것이 좋습니다. 있습니다

자세한 내용은 로깅 가이드를 참조하세요. 요약 및 세부정보 로거의 구성에 대한 세부정보입니다.

Search 또는 SearchStream 메서드

Google Ads API에서는 두 가지 방법으로 객체를 검색할 수 있습니다. Search (페이지로 나누기 사용) SearchStream (스트리밍 사용). SearchStreamSearch 메서드보다 더 나은 성능을 제공하지만 Search 메서드가 선호될 수 있는 특정 시나리오에 해당합니다.

여기에서 두 가지 방법에 대해 자세히 알아볼 수 있습니다.

HTTP 제한 시간

Perl 클라이언트 라이브러리는 클라이언트에서 HTTP 제한 시간을 설정하기 위한 노출 영역을 제공합니다. 수준:

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

기본값은 DEFAULT_HTTP_TIMEOUT 설정에 따라 Constants.pm. 다음과 같은 경우 더 낮은 값을 설정하세요. API 호출의 최대 시간에 더 짧은 제한을 적용해야 합니다.

제한 시간을 2시간 이상으로 설정할 수 있지만 API가 여전히 타임아웃될 수 있습니다. 요청을 보내고 DEADLINE_EXCEEDED 오류 이 오류가 발생하면 요청을 분할하고 병렬 이렇게 하면 장기 실행 요청이 실패하고 복구할 수 있는 유일한 방법은 처음부터 요청을 다시 트리거하는 것입니다.