测试、部署和扩缩基于 Topics 的解决方案

本页介绍了如何使用 Topics API 构建、测试和扩缩生产环境的实现。

Topics 后端实现

您的后端实现取决于您要如何使用浏览器中计算的主题。我们建议广告技术解决方案使用 Topics 作为额外的 IBA 信号。

// Use the language/framework/stack of your preference
function processTopicsBackendAPI(topics) {
 // If the list is not empty, continue
 // Use topics as an additional signal
}

将主题用作额外信号

主题数据可与网址、关键字或其他元数据等其他信号一起作为有关受众群体的额外信号加以考虑。

在使用第三方 Cookie 后尽可能提高广告相关性中所述,您可以通过多种方法利用 Topics 投放相关广告。其中一些方法涉及使用 Topics 构建受众群体,还有一些方法建议使用 Topics 作为一种信号来训练机器学习模型,以便推断受众群体的其他兴趣,甚至优化出价逻辑。

构建和部署

  1. 通过观察生产环境中的用户来收集主题(预计实现时间:大约一周):
    • 了解您的选项:如何使用 HTTP 标头iframe 和 JavaScript 调用 Topics。
    • 定义将调用 Topics API 的 iframe 的网域。
    • 使用标头演示JavaScript 演示作为代码参考,构建您的解决方案。
    • 将 Topics 集成到发布商在其网站上嵌入的代码中(例如您的广告 iframe)。请务必从嵌入内容中调用主题。
    • 如需开始观察用户主题,请在您的正式版网站上嵌入最新版本的脚本。我们建议您先在自己每月访问量较少的网站上测试实现效果。在此阶段,我们建议将基于主题的新解决方案嵌入到至少 5 个网站上。
    • 此时,API 应该会返回一个空数组作为结果。这是因为尚未观察到该用户的任何主题。最长可能需要三周才能开始获取用户主题。
    • 执行功能测试和验证。您可以手动或自动测试解决方案。例如:
      • 使用标志打开浏览器,并将公元纪年设为 15 秒,以便浏览器更快地重新计算主题。
      • 访问嵌入您的脚本的网站。
      • 检查您的脚本是否在 chrome://topics-internals/ 上观察到主题。
      • 看看您有望取得哪些效果
  2. 将 Topics 数据与其他情境信号(例如网址、元数据等)搭配使用(预计时间:大约 3 天)。
    • 在生产环境中运行三周后,您的脚本应该会观察到一些用户的主题。此时,您应该能够使用 Topics 数据作为额外信号。
    • 开始收到非空主题列表后,您可以结合其他情境信号将其发送到后端。

部署到目标网站

将 Topics 调用集成到您的脚本后,请先确保将其嵌入到某些生产网站中,以便进行首次测试。确保您的实现按预期运行:

  • 调用 Topics API。
  • 在此受控环境中,主题可以观察
  • 可以访问主题(API 会返回观察到的用户主题)。

选择目标网站

在将解决方案部署到发布商网站之前,我们建议您先在受控环境中测试该解决方案,并在您拥有的网站上进行测试。我们建议您按如下方式选择目标网站:

  • 网站每月获得的访问量很少(少于 100 万次/月):您应先为少量受众群体部署该 API。
  • 网站归您所有并由您控制:如有必要,您可以快速停用实施功能,无需进行复杂的审批。
  • 网站对业务而言不是至关重要:从风险较低的目标网站开始。
  • 总数不得超过 5 个网站:您目前不需要那么多流量或曝光度。
  • 定位网站代表不同的主题:选择代表不同类别的网站(例如,一个网站与体育相关,另一个网站与新闻相关,还有一个网站与食品和饮料相关)。您可以使用 Chrome 中的内部主题工具来验证网域以及 Topics 机器学习分类器对这些网域的分类方式。

功能测试和验证

在此受限环境中调用 Topics API 时,可能会发生以下结果

  • 主题 [] 的空数组(如果这是此设备在过去 7 天内首次向此网站和来电者发起通话)。
  • 一个由 0 到 3 个主题组成的列表,代表相应用户的兴趣。 观察 7 天后,您应该会收到以下信息:

    • 从前五名用户中选择的 1 个主题,根据调用者在当周观察到的主题的网页的主机名计算得出。
  • 与之前所有 Topics API 调用中完全相同的 API 响应。对于同一调用方、用户和顶级网站,该 API 将在整个周期内返回相同的主题。这有助于避免过多地暴露用户的兴趣。前往 GitHub 了解详情

  • 如果您在观察四周后调用 Topics,则系统会显示一个新主题,用于替换三个旧主题中的一个。

  • 如果您在过去三周或更长时间内未观察到用户的主题,Topics API 将再次返回一个空数组 []

收集性能指标来评估用户体验:

  • 应测量对跨源 iframe 中的 Topics API 的 JavaScript 调用的运行时间,以便在日后的性能分析中使用。
  • 在收到主题后,创建 iframe 和 postMessage() 主题所需的时间。

如需进行问题排查,请参阅支持部分。

扩容至生产环境

至此,您应该已在受控环境(您拥有的某些网站)中测试了主题。如果一切按预期运行,那么是时候扩展此实现了。 将相同的代码部署到更多目标网站。这样一来,您就可以观察更多用户、收集更多主题数据,并加深对受众群体的了解。

以下是有关您如何扩展到生产环境的分步说明:

  1. 在更多流量上测试基于主题的解决方案。
    • 将 iframe 添加到您拥有的更多访问次数较多的网站,然后按照以下说明执行负载测试。
  2. 将您的解决方案部署给发布商的。
    • 当您的解决方案可在您自己的测试环境中正常运行后,您可以与发布商合作,将您的 iframe 集成到他们的网站中。例如,他们可能需要更新包含您的 iframe 的库。
  3. 处理和使用主题数据(预计时间:约 4 周)。
    • 将主题数据作为附加信号与其他数据结合使用。
    • 寻找实时出价测试合作伙伴。
    • 使用主题运行实用性测试,将其作为其他数据的附加信号。

负载测试

为确保您的系统能够处理流量,我们建议先执行负载测试,然后再将基于主题的解决方案部署到发布商的。

  1. 在您拥有的其他目标网站中逐步进行部署,尤其是那些流量更大的网站。
  2. 根据您的预期流量,对您的主题数据执行负载测试。
    • 您需要将主题信息从 iframe 发送到后端。这样,您就可以进一步处理 Topics API 结果,并将其用作额外信号,以帮助选择与用户更相关的广告。随着越来越多的网站采用您的嵌入代码,对后端的调用次数将大幅增加。确认您的后端可以处理来自 iframe 的大量调用。
    • 设置指标收集和日志以进行分析。
  3. 部署 Topics API 后,请立即检查您的指标,以检测任何严重的最终用户问题。请定期查看您的指标。
  4. 如果出现中断或意外行为,请回滚部署并分析日志,以了解并解决问题。

另请参阅

请查看我们的资源,以便更好地了解 Web 版 Topics API。