1、立项原因:品牌广告主在做精准营销时,需要把自有的人群数据推送到抖音、小红书、京东、美团、阿里等多个媒体平台进行广告投放。传统方式要在各平台后台逐个登录、手动上传人群包,操作重复、容易出错,推送进度和结果也无法统一跟踪;分散在各地的数据前置机节点也缺少统一的运维监控。
2、业务背景:本平台为数据营销服务商建设,统一管理各品牌客户的媒体账号授权,打通人群提取、ID 映射、人群包拆分、多媒体推送的完整链路,并对前置机节点进行集中部署、监控和告警,大幅减少运营人员的手工操作。
点击空白处退出提示
1、立项原因:品牌广告主在做精准营销时,需要把自有的人群数据推送到抖音、小红书、京东、美团、阿里等多个媒体平台进行广告投放。传统方式要在各平台后台逐个登录、手动上传人群包,操作重复、容易出错,推送进度和结果也无法统一跟踪;分散在各地的数据前置机节点也缺少统一的运维监控。
2、业务背景:本平台为数据营销服务商建设,统一管理各品牌客户的媒体账号授权,打通人群提取、ID 映射、人群包拆分、多媒体推送的完整链路,并对前置机节点进行集中部署、监控和告警,大幅减少运营人员的手工操作。
1、媒体授权管理:管理抖音巨量云图、小红书聚光/灵犀、京东数坊/京准通、美团、阿里数据银行等媒体渠道,维护客户账号与授权 Token,支持授权回调和授权列表管理。
2、人群管理:DMP 人群提取、SMC 人群提取、ID Mapping 任务、打标任务,支持 CAID、CAID-MD5 等多种 ID 类型的受众构建。
3、人群包拆分:按标签字段和规则配置拆分条件,自动拆分人群包。
4、统一推送:创建推送任务,把人群包一键推送到多个媒体平台;支持推送进度跟踪、日志查询和结果导出。
5、SMC 活动构建:自动构建营销活动,支持子任务失败重试和构建结果通知。
6、前置机管理:节点列表、节点维护、WAR 包版本匹配、公共配置与角色配置、主机分组、CPU 等资源监控。
7、监控告警:配置告警策略,通过企业微信机器人和邮件推送任务异常及节点告警。
8、系统管理:用户、组织、角色、按钮级权限,SFTP 账号管理,多数据源配置,操作日志。
1、本人负责:作为项目主要开发者,负责后端多模块架构的搭建和大部分模块开发,以及前端管理页面开发,包括媒体授权、统一推送、人群提取、前置机管理、监控告警等核心功能,并负责测试与生产环境的发布。
2、技术架构:后端基于 JDK17 + Spring Boot 3 的 Maven 多模块工程,按业务拆分为授权管理、人群提取、人群包拆分、SMC 活动构建、前置机管理、全局管理、调度服务等模块,使用 MyBatis-Plus + MySQL;定时任务由 XXL-Job 调度;各媒体平台的登录与推送由 Python 脚本实现,Java 统一调度执行;前端基于 Vue3 + Vite + Ant Design Vue + Tailwind CSS。
3、实现亮点与难点:
(1)多媒体平台适配:各平台接口和上传方式差异很大,后端抽象统一的推送任务模型,具体平台由独立脚本适配,新增媒体时无需改动核心流程。
(2)任务调度与容错:人群提取、推送、活动构建都是长耗时任务,通过 XXL-Job 和并发任务控制统一调度,子任务失败自动重试,状态定时刷新,并修复了邮件超时导致的重复投递问题。
(3)动态多数据源:基于 AOP 和 AbstractRoutingDataSource 实现运行时动态切换数据源,支撑不同客户、不同环境的数据查询。
(4)前置机运维:集中管理分布式前置机节点,支持 WAR 包 MD5 校验与版本匹配、配置下发、CPU 指标采集,结合告警策略通过企业微信 Webhook 实时通知。
(5)文件传输:通过 SFTP 和对象存储工具完成大体积人群文件传输,加强了命令执行失败时的错误处理。



评论