Adobe Analytics的布署方式变迁:从客户端到服务端

Adobe Analytics Haran 4年前 (2020-07-18) 1664次浏览 0个评论
文章目录[隐藏]

这一节来讲讲Adobe Anaytics的布署方式,大体和分为两种,客户端和服务端布署:

  • 客户端:客户端布署就是数据从客户端(APP或浏览器)直接发送给Adobe Analytics数据收集服务器
  • 服务端:服务端布署就是数据先从发送到边缘服务器,然后再发送给Adobe Analytics数据收集服务器

这两种方式最大的区别在于是否有边缘服务器,我们先看看客户端布署:

客户端布署

客户端布署基于收集数据的服务器可以分为:

  • 第三方数据收集服务器:将数据发送到Adobe的数据收集服务器
  • 第一方数据收集服务器:数据是先发送到自己的二级域名,再转发给Adobe数据收集服务器,这种方式也叫CNAME

 

第三方数据收集服务器:直接发送

直接发送就是将数据直接发给Adobe的数据收集服务器

如果你看到Adobe Analytics的请求是发送到2o7.net、omtrdc.net 或data.adobedc.net(这个是2022年新启用) ,这就是它默认收集服务器,那么就只直接发送的。

Adobe Analytics的布署方式变迁:从客户端到服务端

 

注意:这两个服务器都是境外的,也就是中国区用户如果使用Adobe Analytics默认是传递到境外的,Adobe有针对中国的数据中心,域名为sc.adobedc.cn,可以向Adobe申请,这个需要付费。

Adobe Analytics的布署方式变迁:从客户端到服务端

延伸阅读:Adobe Launch和Adobe Analytics的本土化增值功能

 

第一方数据收集服务器:CNAME解析

CNAME 即指别名记录,也被称为规范名字。一般用来把域名解析到别的域名上,或是将一个域名映射到另一个域名。将可供第三方分析提供商使用的子域名通过 CNAME DNS 记录以别名的形式发给外部服务器。比如是解析到A,但实际是解析到B,也就是数据是发送到B。

比如网站www.apple.com是实施了CNAME解析了,你看到Adobe Analytics的请求是发送到你的二级域名的,比如securemetrics.apple.com:

Adobe Analytics的布署方式变迁:从客户端到服务端

但实际上它是解析到appleglobal.102.112.2o7.net,我们可以ping一下它:

Adobe Analytics的布署方式变迁:从客户端到服务端

它发送到2o7.net,CNAME解析就是将域名解析到别的域名上去。

 

使用CNAME有如下一下优点:

  • 现在的浏览器逐步全面禁用第三方Cookie:苹果和Mozilla 等公司在过去数年内为解决隐私问题,都在各自的浏览器 Safari 和火狐浏览器中引入追踪防护机制,并开始默认拦截由第三方追踪器设置的第三方cookie,Safari更是将通过 document.Cookie API 设置的第一方持久性 Cookie(通常称为“客户端”Cookie)的有效期限最长为 7 天;Chrome从 Chrome 80 开始,通过不同方式处理 SameSite 属性,以管理第三方 Cookie 或跨站点请求,最终,Chrome 开发人员正在寻找方法彻底弃用第三方 Cookie ;Firefox 和 Edge的产品公告指出,其浏览器的后续版本将遵循与 Chrome 80 中相同的更改。由于ITP的规则的变化,基于CNAME 和JavaScript设置的cookie的有效期是一样,所以这种方法的作用在减弱。
  • Adobe Analytics默认收集数据的服务器是2o7.net和omtrdc.net ,由于某些安全原因,这两个域名可能会被列为跟踪的类型并被屏蔽。

如果你只有一个网站的,可以直接使用默认的数据收集主机名( omtrdc.net 或 2o7.net );也可以使用CNAME部署,后者看起来会更好。

有种说法:由于很多CNAME都是使用analytics和metrics,如adblocker开始屏蔽这两个关键字的请求,所以在定义CNAME的时候,尽量使用其他名字。

 

 

服务端布署

服务端布署方法是将数据是先发到边缘服务器,然后边缘服务器再发给Adobe Analytics或其他第三方平台:

Adobe Analytics的布署方式变迁:从客户端到服务端

数据是先发到边缘服务器的过程,其实有很大不同,如它的url是很短:

Adobe Analytics的布署方式变迁:从客户端到服务端

可以通过请求上的configId(这个ID对应的就是Launch里的DataStream ID)判断是不是服务端布署。

实际上它是用beacon发送的,它发信息都在Payload里:

Adobe Analytics的布署方式变迁:从客户端到服务端

Query String Parameter里除了configid,还有一个是requestid,这个是UUIDv4,这是一个随机标识符,用于区分这个请求是唯一的。

Payload里可以看到XDM里有很很多的信息,XDM的全称是 Experience Data Model,叫体验数据模型,它是可重用的一致方式描述数据结构,上面的数据是可以重复映射发向不同的位置。

服务端布署在国外是一种趋势,有不少优点:

  • 简化Adobe产品的布署,减少客户实现的时间,加载实施的速度,降低成本:如不用服务端布署,你布署5个第三方工具收集数据,至少会有需要向5个服务器发送数据,如果用服务端布署,只发送一条,先发送到边缘服务器,然后服务器在将XDM数据映射转到第三方平台;
  • 与旧库相比,性能提高
  • 能更好的保护用户隐私:在数据映射的时候,你可以控制和决定发送的信息,能更好的保护用户隐私。

 

服务端部署方式有多种方式:

 

由于Adobe在CN是没有服务端部署的数据中心的,一般是使用日本或新加坡的,所以面向国内用户站点不适合使用服务端部署。


如有疑问,可以在文章底部留言或邮件(haran.huang@ichdata.com) 我~
喜欢 (3)
发表我的评论
取消评论
表情 贴图 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址