Delivered

  • 持续接入和维护多媒体渠道的鉴权、花费及素材关系,隔离各渠道协议差异
  • 广告主维度并发采集,设置整体任务超时与有限重试,保留失败对象和处理日志
  • 统一金额单位与数据权限口径,支持后续补数、对账和素材效果分析

项目背景与我的范围

投放业务需要从多个媒体平台获取账号、花费和素材关系。不同渠道的鉴权、分页、字段、金额单位并不一致,单个接口能调通,只是接入的起点。

我参与的是团队系统中的媒体接入和数据链路。自己的提交覆盖微博、百度 SEM、爱奇艺、小红书、豆瓣、网易云音乐、有道、华为商店等渠道能力,以及 B站素材关系维护和数据权限修复。这里展示的是负责的模块与持续改进,不把整个团队平台都归到个人名下。

从接口接入到可运行链路

渠道差异保留在各自 Handler 或媒体服务中,调度侧按账号、日期和数据类型触发任务。接入时需要明确 token 如何刷新、接口返回如何归一化、数据在什么维度写入,以及失败后应记录什么。

例如花费不能直接照搬媒体返回值。提交中既有金额精度调整,也有不同渠道成本单位的转换。B站链路把媒体返回的毫分换算为分,避免看起来字段相同、实际口径不同。

并发和重试需要业务边界

B站花费采集按广告主并发,整体等待设置 30 分钟超时。素材关系查询先跳过已有关系,再分组获取创意详情;限流与 IO 异常分别进入有限重试,达到上限后记录失败并继续处理其他批次。

这类实现让我更重视两件事:一是并发粒度必须能对应到可补跑的业务对象,二是重试要区分错误原因。参数不合法、token 失效、限流和网络异常,不能都交给同一个无限重试循环。

权限也是数据链路的一部分

自己的提交还涉及媒体项目查询、素材报表与数据权限修复。接口返回正确的数据,并不代表返回范围正确;查询条件、用户角色和账号归属都需要在后端保持一致。

我在项目里积累的能力

  • 业务适配:把外部平台的协议、金额和对象层级,转成内部可使用的数据。
  • 可靠性判断:围绕任务超时、有限重试、错误日志和补跑对象设计失败路径。
  • 跨层排查:从媒体响应追到本地关系、权限过滤和最终报表,解释数据为何缺失或口径不同。

开发中大量借助 AI 完成实现,我需要给出渠道规则、异常样例和验证场景,并检查生成代码是否遵守这些边界。项目价值体现在可解释的接入流程和问题处理上。