适用于 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
错误。如果遇到该错误,请将请求拆分并并行执行分块;这样可以避免长时间运行的请求失败的情况,唯一的恢复方法是从头开始触发请求。