星星海SA2云服务器助力腾讯广告“千人千面”,广告计算提速25%-冯金伟博客园

  近日,腾讯广告相关技术负责人透露,腾讯广告检索实时计算业务借助腾讯云自研星星海 SA2 云服务器提供的稳定高性能算力,支撑每日多达数百亿次的广告检索计算任务,匹配一条广告的计算耗时相比采用传统服务器降低了 25%,有效提升了腾讯广告推荐的精准性。

  基于用户群体的兴趣标签,推荐最适合的广告信息,同时以目标受众最喜欢的创意形式展现出来——互联网广告中的“千人千面”模式,大幅提升了广告投放效率。

  事实上,“千人千面”的广告呈现,背后有赖于一条实时计算链路,其中包括广告请求接入、请求画像信息计算、广告实时筛选、广告打分排序、广告展示等关键步骤。

  为了确保广告的呈现不影响产品体验,整个过程需要在毫秒级的时长内全部完成,对实时性的要求非常严苛。另外,由于业务体量巨大,腾讯广告检索实时计算系统并发数量非常高,对计算性能要求非常大。

  之前,腾讯广告采用物理服务器集群来部署这项服务。业务的不断增长,对物理服务器的成本和灵活性也提出了新的挑战。在腾讯内部“自研上云”的整体战略下,腾讯广告在 2019 年开始探索业务上云,并率先使用腾讯云自研星星海 SA2 云服务器为业务系统提供算力支撑。

  星星海 SA2 云服务器底层物理服务器采用了腾讯云首款拥有完全自主知识产权的服务器硬件。

  为了确保星星海 SA2 云服务器能够有效满足腾讯广告的业务诉求,在规模化应用之初,腾讯广告对其进行了多轮测试。测试结果显示,相比过往使用的传统物理服务器,星星海 SA2 云服务器使得广告计算整体耗时降低了 25%。

  “星星海 SA2 云服务器中超大的 CPU 三级缓存(L3 Cache)配置,使得 CPU 可以从更快速的缓存中获取数据,较之传统服务器中需要到相对慢的动态随机存取存储器(DRAM)去获取效率更高,这对服务器整体性能的提升尤为关键。”腾讯云星星海实验室负责人介绍。

  在测试中,腾讯广告还发现如果直接按照过往物理服务器相同架构进行部署,服务器性能优势还无法凸显,但虚拟化后,作为云上实例的星星海 SA2 云服务器则能够充分地发挥出底层硬件的性能优势。

  “这是星星海为云而生理念的体现。”星星海实验室负责人介绍,作为云原生硬件的倡导者,星星海服务器遵循软硬一体化思路,完全面向云计算的使用场景打造,能够让服务器硬件与腾讯云上的自研软件产生相得益彰的效果。”

  譬如,在物理机环境下,一般服务器会存在 CPU 远端访问内存的情况,增加 CPU 计算耗时。但腾讯云自研的虚拟化技术,能够将物理机的 CPU 和内存进行切分,保证将整个单片 CPU 分配给业务,业务就能够始终就近访问本地内存。“这样既能解决反应时延的问题,也能充分发挥星星海 SA2 云服务器核心数多的优势。”

  此外,在广告计算的场景下,操作海量数据会进行频繁的硬盘或内存读写操作,整个过程对物理机的损耗非常大,物理机出现故障,极易影响业务可用性。受益于云上故障监测能力,绝大部分的安全隐患可以被即时发现,并借助腾讯云自主研发的云计算操作系统 VStation 自动发起云服务器热迁移,整个迁移过程对业务层面无感知,最大程度保证了业务稳定性和连续性。

  后续,腾讯广告计划更多业务部署在星星海云 SA2 云服务器上,并借助云上的产品和技术,打磨更好的广告服务体验。“我们洞察到了硬件架构贴近业务特征所带来的巨大收益。”腾讯广告相关负责人表示。

  目前,在腾讯内部业务场景中获得稳定应用验证后,腾讯云也正加速在遍布全球的数据中心中部署星星海 SA2 云服务器,将稳定高性价比的计算能力以云服务的形式开放给用户。