本指南介绍了一些最佳实践,您可以实施这些实践来优化应用的效率和性能。
维护应用
为确保应用不间断运行,请执行以下操作:
确保 Google Cloud 项目的所有者和编辑者列表是最新的。如果发生任何紧急情况或与遵守 API 条款及条件相关的主题,我们会与这些用户联系。如果我们无法就遵守 API 条款及条件事宜与您联系,您的 API 访问权限可能会被降低或撤消。
确保您的应用符合 Google Ads API 条款及 条件。如有必要,API 合规团队会与拥有 API 访问权限的 Google Cloud 项目的所有者和编辑者联系。如果您对条款及条件有疑问或疑虑,可以在审核您的 API 访问权限申请时回复合规团队发送给您的电子邮件,与他们联系。
优化
您可以通过运行批量操作并在适当情况下发送稀疏对象来优化应用。
批量操作
向 API 发出请求会产生一些固定费用,例如往返网络延迟、序列化和反序列化处理以及对后端系统的调用。为了减少这些固定费用的影响并提高整体性能,API 中的大多数 mutate 方法都设计为接受一系列操作。通过将多个操作批量处理到每个请求中,您可以减少发出的请求数量和相关的固定费用。如果可以,请避免发出仅包含一个操作的请求。
例如,假设您要向某个广告系列的多个广告组添加 5 万个关键字。您可以发出 100 个请求,每个请求包含 500 个关键字,而不是发出 5 万个请求,每个请求包含 1 个关键字,甚至可以发出 10 个请求,每个请求包含 5,000 个关键字。 一个请求中允许的操作数量有限制,因此您可能需要调整批量大小以实现最佳性能。
发送稀疏对象
当对象发送到 API 时,字段必须进行反序列化、验证并存储在数据库中。如果您只想更新几个字段,但却传入完整对象,可能会导致额外的处理时间和性能下降。为了缓解这种情况,Google Ads API 支持稀疏更新,让您只需填充对象中需要更改或必需的字段。
稀疏更新的处理速度更快,并且不太可能产生错误。不在 update_mask(也称为 FieldMask)中的字段将保持不变。
例如,使用稀疏更新可让需要更新关键字级出价的应用受益,因为只需填充广告组 ID、条件 ID 和出价字段。
错误处理和管理
在开发过程中,您可能会遇到错误。本部分介绍了 在应用中构建错误管理功能时需要考虑的事项和策略。除了本部分之外,您还可以访问问题排查 指南,详细了解如何管理错误。
区分请求来源
有些应用主要是交互式的,直接在界面中响应用户发起的操作来发出 API 调用。其他应用主要离线运行,作为定期后端流程的一部分发出 API 调用。许多应用结合了这两者。在考虑错误管理时,区分这些不同类型的请求可能会很有用。
对于用户发起的请求,您的主要关注点应该是为用户提供良好的体验。使用发生的具体错误在界面中尽可能多地向用户提供上下文。提供用户可以采取的明确步骤来解决错误(请参阅以下建议)。
对于在后端发起的请求,请为应用可能遇到的不同类型的错误实现处理程序。请务必加入一个默认处理程序,用来处理罕见或以前未遇到过的错误。对于默认处理程序,建议将失败的操作和错误添加到队列中,供操作员查看并确定适当的解决方案。
区分错误类型
在构建强大的错误处理功能时,了解 Google Ads API 中不同错误类型之间的差异至关重要。下面是最常见的一些错误类型:
同步后端
如果应用用户有手动访问 Google Ads 账号的权限,他们可能会做出应用无法知晓的更改,导致应用的本地数据库不同步。如我们的错误类型指南中所述,您可以在发生
同步相关错误时做出反应,但也可以尝试主动防止
这些错误。一种主动策略是运行定期同步作业,以协调本地数据库与账号中的 Google Ads 对象。对于
大型账号层次结构,请避免每晚提取所有账号中的所有对象,以防止超出每日配额;而是查询
ChangeStatus或过滤最近修改的实体,以增量方式同步更改。
日志错误数
应将所有错误都记录到日志中以便进行调试和监控。至少要记录请求 ID、导致错误的运算以及错误本身。要记录的其他信息包括客户 ID、API 服务、往返请求延迟时间、重试次数,以及经过清理的原始请求和响应(确保修订敏感凭据,例如 OAuth 令牌和任何 PII)。
监控趋势
请务必监控 API 错误方面的趋势,以便检测和解决应用存在的问题。您可以考虑构建自己的解决方案,也可以使用许多可用的商业工具之一,这些工具可以使用您的日志生成互动式信息中心并发送自动提醒。
开发
在开发期间使用测试账号。
使用测试账号
测试账号是不实际投放 广告的 Google Ads 账号。您可以使用测试账号来试用 Google Ads API,并测试应用的连接、广告系列管理逻辑或其他处理是否按预期运行。您的 Google Cloud 项目只需测试账号的测试访问权限,因此您可以立即开始使用 Google Ads API 进行开发,同时等待 Google 审核您的应用以获取更高的 API 访问权限级别。