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