性能

Perl 客户端库可简化与 Google Ads API 的互动,您只需进行极少量的配置即可。但是,性能在很大程度上取决于库的使用方式和集成方式。

这些最佳实践中的大多数适用于所有语言。本指南将介绍 Perl 特有的设置。

剖析应用的性能

分析应用的 CPU 和内存使用情况,找出性能瓶颈。Devel::NYTProf 是一个功能丰富的 Perl 源代码分析器,值得探索。

Perl 版本

定期升级到较新的 Perl 版本是一种很好的做法,因为它通常具有更好的整体性能。如需了解最新的 Perl 版本以及此页面中库所需的最低版本,请点击此处

日志记录

大量日志记录可能会导致严重的执行时间损失和内存消耗。对于生产环境中的任何代码,我们建议将日志记录级别设置为 WARN

如需详细了解摘要日志记录器和详细日志记录器的配置,请参阅日志记录指南

Search 或 SearchStream 方法

Google Ads API 提供两种主要的对象检索方法:Search(采用分页)和 SearchStream(采用流式传输)。 SearchStream 可提供优于 Search 方法的性能,但在某些情况下,可能最好使用 Search 方法。

您可以点击此处详细了解这两种方法。

HTTP 超时

Perl 客户端库提供了一个在客户端上设置 HTTP 超时的途径:

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

默认值根据 Constants.pm 中的 DEFAULT_HTTP_TIMEOUT 设置设定。如果您需要对 API 调用最长时间施加较短的限制,请设置较低的值

您可以将超时设置为 2 小时或更长时间,但 API 可能仍会将超长时间运行的请求超时并返回 DEADLINE_EXCEEDED 错误。如果遇到该错误,请将请求拆分并并行执行分块;这样可以避免长时间运行的请求失败,而恢复的唯一方法是从头开始触发请求。