互联网广告请求链路_广告计费系统容灾设计(上)-数据流&系统

本文介绍了蘑菇街广告计费系统的架构和容灾设计,包括数据流的处理,系统容灾的关键问题,以及如何保证数据一致性。系统通过数据采集阶段的防刷机制,使用Kafka进行数据缓冲,保证数据处理的负载均衡和幂等性,以应对数亿级别的曝光和点击。此外,系统采用限流、降级和幂等性设计以确保稳定性,并支持AB测试和不停服切换,确保在高流量和异常情况下的数据一致性和系统可靠性。
摘要由CSDN通过智能技术生成

822df352121a6f3476d1f07bd639b184.png

互联网广告系统本身是一个对稳定性和可靠性要求极高的系统,每天面对数十亿级别的请求,广告投放主多样的投放方式变化与用户关注点及兴趣频繁的更新,同时对时效性要求严格,而作为电商广告的计费系统,则要求更加严格, 从打点到计费任何一环节出现问题,都会带来巨大的经济损失和平台信任度危机,涉及到商家账户资金,系统实时反作弊和防刷,亿级别点击(曝光)等高效稳定账务扣费,数据的强一致性和最终一致性的保证及全链路高效可靠的监控..

本次主要介绍下蘑菇街广告计费系统的持续优化改进中,系统容灾方面做的一些事情

一.计费系统介绍:

广告对很多互联网公司营收占有非常重要的比重,对互联网广告大家应该不陌生,日常pc和app应该见过很多(弹窗广告,视频广告等),电商来说也是非常重要的营收方式,那么这些广告是怎样计费的,先来了解下几种常见的计费模式

CPC(Cost Per Click ) : 按点击计费的商业产品,对于电商,常用于站内广告资源位,用于推广商品
CPS (CostPer Sale ) :按成交计费的商业产品,站外引流,站外长尾流量,用于推广商品/店铺
CPM(Cost Per Mille, 或者Cost Per Thousand;Cost Per Impressions) : 按曝光计费的商业产品,站内banner位等资源,用于推广品牌店铺
其他还有比较常用的,如:CPD(按天计费),CPT(按时间计费),CPA(按激活或者行为等).

广告计费系统的数据流,如下图所示:

5b5f2bb39a9dace236c4331ee28841f7.png
计费系统模块图

数据来源:web端用户对广告触发行为产生数据,主要是广告资源位上广告的曝光,点击等

数据收集:用于接收web产生的广告数据,为了保证下游系统的稳定性,盗刷及恶意流量一般这层要给拦截住,核心必须保证性能高效及数据防刷功能

数据处理:广告系统计费最核心的功能部分,主要是计费数据的处理,涉及到计费策略,计费金额核算,反作弊及对余额或者预算不足广告进行上下架等操作

数据存储:主要是对处理过的流水,账务及广告数据的持久化

和数据流结构对应,我们来了解下蘑菇街现在广告计费系统,整体架构如下,其中billingWorker是处理计费数据最核心的程序,unionLogAgent是自研支持规则定制和流量切分的数据收集程序,后面会对每个部分的技术及设计做重点的介绍.

a01bec2b3cad124838b6870352ac7b78.png

二.系统容灾设计

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值