用于at.js的On-device decisioning
从版本2.5.0开始,at.js提供on-device decisioning。 On-device decisioning允许您在浏览器上缓存A/B测试和体验定位 (XT)活动以执行内存中决策,而不会向Adobe TargetEdge Network发送阻止网络请求。
Target还可以通过实时服务器调用,灵活地从您的实验和机器学习驱动的(ML驱动的)个性化活动中提供最相关和最新的体验。 换句话说,当性能最重要时,您可以选择使用on-device decisioning。 但是,当需要最相关、最新且ML驱动的体验时,可以改为进行服务器调用。
on-device decisioning有哪些好处?
on-device decisioning的优点包括:
- 提供超快的决策和体验。 在内存中和浏览器上执行分段和决策,以避免阻止网络请求。
- 增强应用程序性能。 在不影响最终用户体验的情况下运行实验并向您的客户和用户提供个性化。
- 提高Google网站质量分数。 由于决策在内存中进行,请提高您在线业务的Google网站质量分数,以使消费者更容易发现它。
- 从实时分析中学习。 通过Analytics for Target (A4T)报表实时了解您的活动表现。 A4T允许您在关键时刻调整策略。
受支持的功能
Adobe Target JS SDK使客户能够灵活地选择数据的性能和新鲜度以供决策。 换言之,如果通过机器学习提供最相关且最引人入胜的个性化内容对您来说最重要,则应进行实时服务器调用。 但是,当性能更加关键时,应该做出设备上决策和内存决策。 要使on-device decisioning正常工作,请参阅支持的功能列表:
- 活动类型
- 受众定位
- 分配方法
有关详细信息,请参阅on-device decisioning🔗的支持的功能。
on-device decisioning的工作原理是什么?
在启用on-device decisioning的情况下部署和初始化at.js时,将从最接近访客的Akamai CDN下载并缓存访客浏览器本地的一个规则工件,其中包含用于A/B和XT活动、受众及资产的on-device decisioning。 当从at.js发出检索体验的请求时,将根据在缓存的规则工件中编码的元数据,在内存中做出有关返回哪个体验的决策。
决策方法
通过on-device decisioning,Target引入了一个名为“决策方法”的新设置。 决策方法设置指示at.js如何交付您的体验。 决策方法具有三个值:
- 仅服务器端
- 仅限设备端
- 混合
仅服务器端
仅服务器端是在您的Web资产上实施和部署at.js 2.5.0及更高版本时开箱即用的默认决策方法。
仅将服务器端用作默认配置意味着在Target边缘网络上做出所有决策,其中涉及阻止服务器调用。 此方法可能会引入增量延迟,但它还提供了显着的优势,例如让您能够应用Target的机器学习功能,包括Recommendations、Automated Personalization (AP)和自动定位活动。
此外,通过使用Target的用户配置文件(跨会话和渠道保留)增强您的个性化体验,可为您的业务带来强大的成果。
最后,服务器端仅允许您使用Adobe Experience Cloud并微调可通过Audience Manager和Adobe Analytics区段定位的受众。
下图说明了您的访客、浏览器、at.js 2.5.0+和Adobe Target Edge网络之间的交互情况。 此流程图会捕获新访客和回访访客。
(单击图像可展开至全宽。)
以下列表对应于图中的数字:
也可以选择在页面上实施预先隐藏的代码片段,以异步方式加载at.js库。
配置文件存储区从受众库请求符合条件的受众(例如,从Adobe Analytics、Adobe Audience Manager等共享的受众)。
客户属性会以批量过程发送到配置文件存储区。
仅限设备端
“仅限设备端”是必须在at.js 2.5.0及更高版本中设置的决策方法,当时on-device decisioning只应在您的网页中使用。
On-device decisioning能够以惊人的速度交付您的体验和个性化活动,因为决策是从包含您所有符合on-device decisioning条件的活动的缓存规则工件做出的。
要了解有关哪些活动符合on-device decisioning条件的更多信息,请参阅on-device decisioning🔗中的支持的功能。
仅当在所有需要Target决策的页面上的性能都非常关键时,才应使用此决策方法。 此外,请记住,选择此决策方法时,将不会交付或执行您不符合on-device decisioning条件的Target活动。 at.js库2.5.0及更高版本配置为仅查找缓存的规则工件以做出决策。
下图说明了您的访客、浏览器、at.js 2.5.0+和Akamai CDN之间的交互。 Akamai CDN将在访客首次访问时缓存规则构件。 对于新访客进行的首次页面访问,必须从Akamai CDN下载JSON规则构件,才能在访客的浏览器中缓存到本地。 下载JSON规则工件后,将立即做出决策,而无需阻止网络调用。 以下流程图可捕获新访客。
(单击图像可展开至全宽。)
以下列表对应于图中的数字:
也可以使用页面上实施的可选预隐藏代码片段异步加载at.js库。
下图说明了访客、浏览器at.js 2.5.0及更高版本与缓存的JSON规则工件之间的交互,这些工件用于访客的后续页面点击或回访。 由于JSON规则工件已缓存并在浏览器中可用,因此会立即做出决策,而无需阻止网络调用。 此流程图会捕获后续页面导航或回访访客。
(单击图像可展开至全宽。)
以下列表对应于图中的数字:
也可以使用页面上实施的可选预隐藏代码片段异步加载at.js库。
混合
混合决策方法是必须在at.js 2.5.0及更高版本中设置的决策方法,当时on-device decisioning和需要对Adobe Target Edge网络进行网络调用的活动都必须执行。
当您同时管理on-device decisioning活动和服务器端活动时,考虑如何在您的页面上部署和预配Target时,可能会有点复杂和繁琐。 使用混合决策方法,Target知道何时必须对Adobe Target Edge网络进行服务器调用以执行需要服务器端执行的活动,以及何时仅执行设备上决策。
JSON规则工件包含元数据,用于通知at.js mbox是正在运行的服务器端活动还是on-device decisioning活动。 此决策方法可确保通过on-device decisioning快速完成您想要交付的活动,对于需要更强大的ML驱动型个性化的活动,这些活动将通过Adobe Target Edge网络完成。
下图说明了您的访客、浏览器、at.js 2.5.0及更高版本、Akamai CDN以及首次访问您页面的新访客的Adobe TargetEdge Network之间的交互。 此图的要点是,在通过Adobe Target Edge网络做出决策时,将异步下载JSON规则构件。
此方法可确保包含许多活动的工件大小不会对决策的延迟产生负面影响。 同步下载JSON规则工件并在此后进行决策也会对延迟产生不利影响,并且可能不一致。 因此,混合决策方法是一种最佳实践建议,始终为新访客决策进行服务器端调用,并且并行缓存JSON规则构件。 对于任何后续页面访问和回访,将通过JSON规则工件从缓存和内存中做出决策。
(单击图像可展开至全宽。)
首次访客的混合流程图
以下列表对应于图中的数字:
也可以使用页面上实施的可选预隐藏代码片段异步加载at.js库。
下图说明了访客、浏览器、at.js 2.5.0及更高版本和缓存的JSON规则工件之间的交互,这些工件用于后续页面导航或回访。 在此图表中,仅重点介绍为后续页面导航或回访作出设备上决策的用例。 请记住,根据某些页面中活跃的活动,可以进行服务器端调用以执行服务器端决策。
(单击图像可展开至全宽。)
以下列表对应于图中的数字:
也可以使用页面上实施的可选预隐藏代码片段异步加载at.js库。
如何启用on-device decisioning?
On-device decisioning适用于使用At.js 2.5.0及更高版本的所有Target客户。
要启用on-device decisioning:
-
单击 Administration > Implementation > Account details。
-
在 Account details 下,将 On-Device Decisioning 切换开关滑动到“开”位置。
如果启用了on-device decisioning,则会显示“将所有现有的on-device decisioning合格活动包含在项目中”选项。
-
(视情况而定)如果您希望所有符合on-device decisioning条件的实时Target活动自动包含在项目中,请将切换开关滑动到“开”位置。
将此切换保留为关闭表示您必须重新创建和激活任何on-device decisioning活动,才能将其包含在生成的规则工件中。 换言之,在打开设备上决策切换开关之前处于实时状态的任何活动均不包含在规则工件中。
启用“设备端决策”切换后,Target开始为您的客户端生成和传播规则工件。
如何配置at.js 2.5.0及更高版本以使用on-device decisioning?
-
单击 Administration > Implementation > Account details。
-
在 Implementation Methods > Main Implementation Method 下,单击您的at.js版本(必须是at.js 2.5.0或更高版本)旁边的 Edit。
note warning WARNING 在更改这些默认设置之前,请咨询客户关怀团队,以避免影响您当前的实施。 -
选择所需的决策方法:
- 仅服务器端
- 仅限设备端
- 混合
全局设置
您可以为所有Target决策配置默认决策方法。 各种决策方法是仅服务器端、仅设备上和混合。 在Target UI中选择的决策方法在decisioningMethod
字段下的window.targetGlobalSettings
中配置。 在targetGlobalSettings()中了解有关decisioningMethod
的更多信息。
<head>
<script type="text/javascript">
window.targetGlobalSettings = {
clientCode: "yourClientCodeHere",
imsOrgId: "imsOrgId@AdobeOrg",
decisioningMethod: "on-device"
};
</script>
<script type="text/javascript" src="at.js"></script>
</head>
自定义设置
如果您在window.targetGlobalSettings
中设置了decisioningMethod
,但想要根据用例覆盖每个Adobe Target决策的decisioningMethod
,则可以通过在At.js2.5.0+的getOffers()调用中指定decisioningMethod
来执行此过程。
adobe.target.getOffers({
decisioningMethod:"on-device",
request: {
execute: {
mboxes: [
{
index: 0,
name: "homepage"
}
]
}
}
});
decisioningMethod
设置为“设备上”或“混合”。 at.js库2.5.0及更高版本必须知道是否在页面上加载后立即下载和缓存JSON规则构件。 如果将全局设置的决策方法设置为“服务器端”,并且将“设备上”或“混合”决策方法传递到getOffers()调用中,则at.js 2.5.0及更高版本将不会缓存JSON规则工件以执行您的设备上决策。工件缓存TTL
Target表示您的活动符合on-device decisioning作为包含元数据、规则和条件的对象的条件。 此工件将缓存在Akamai CDN上。 在用户首次访问期间,用户的浏览器将下载并缓存表示您的on-device decisioning活动的工件。
在后续访问您的网站时,浏览器会自动检查它是否必须下载新版本的工件。 这项检查会增加延迟。 工件缓存TTL定义自上次成功下载以来,您不希望浏览器检查更新的工件的分钟数。 时间范围越长,性能越好。 时间范围越短,数据新鲜度越好,但代价是增加了延迟。
我如何知道某个活动符合on-device decisioning条件?
创建符合on-device decisioning条件的活动后,活动的“概述”页面中将显示一个标记为“符合设备上决策”的标签。
活动概述页面上的
此标签并不意味着该活动将始终通过on-device decisioning交付。 仅当at.js 2.5.0及更高版本配置为使用on-device decisioning时,此活动才会在设备上执行。 如果at.js 2.5.0及更高版本未配置为使用设备端,则此活动仍将通过从at.js发出的服务器调用进行交付。
您可以通过“符合设备端决策”筛选条件,筛选在“活动”页面上符合on-device decisioning资格的所有活动。
确保通过At.js 2.5.0交付我的on-device decisioning活动的步骤摘要+?
-
访问Adobe Target UI并导航到 Administration > Implementation > Account Details 以启用 On-Device Decisioning 切换。
-
启用 "Include all existing on-device decisioning qualified activities in the artifact" 切换。
首个JSON规则工件生成操作最多可能需要10分钟。
-
创建并激活on-device decisioning🔗支持的活动类型,并验证它是否符合on-device decisioning条件。
-
通过at.js设置UI将 Decisioning Method 设置为 "Hybrid" 或 "On-device only"。
-
下载At.js 2.5.0及更高版本并将其部署到您的页面。