性能

适用于 Perl 的客户端库,您只需进行最低限度的配置,即可简化与 Google Ads API 的互动。不过,性能在很大程度上取决于该库的使用方式和集成方式。

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

剖析应用的性能

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

Perl 版本

定期升级到较新的 Perl 版本是一种很好的做法,因为新版本通常会提高整体性能。如需查看最新的 Perl 版本以及此页面上该库所需的最低版本,请点击此处

日志记录

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

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

Search 或 SearchStream 方法

Google Ads API 提供了两种主要方法来检索对象:Search(使用分页)和 SearchStream(使用流式传输)。与 Search 方法相比,SearchStream 的性能更好,但在某些情况下,可能首选 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 错误。如果遇到该错误,请将请求拆分并并行执行分块;这样可以避免长时间运行的请求失败的情况,唯一的恢复方法是从头开始触发请求。