领域驱动设计-慕课网

类型
软件架构
学习时间
Jan 15, 2022
状态
进行中
参考资料
网站
封面
DDD背景
智慧零售项目
 
%%{init: {'theme': 'base', 'themeVariables': { 'primaryColor': '#d1e3a0','textColor':'#ffffff','loopTextColor':'#ffffff'}}}%% sequenceDiagram participant A as 受众给TSP提供的回调接口 participant B as 执行记录 participant C as S3云存储 participant D as 任务执行记录的TSP快照(ES) participant E as 任务执行记录的受众快照(ES) A->>A:TSP 调用回调接口 传参 业务唯一id(批次号+tsp的人群id)+ 文件地址 A->>B: 查询批次号对应的任务记录及受众id B-->>A: 返回受众id A->>+C:8, 根据文件地址+桶信息+密钥 获取s3存储的S3文件 Note right of A: 文件过大,可能OOM C-->>-A: 返回文件 A->>A:9,解析文件 alt 解析失败 A->>B: 更新执行记录状态为执行失败 B-->>A: success else 解析成功 A->>A: 更新TSP人群信息,存储该次更新tsp用户的快照信息 A->>D: 存储该次更新tsp用户的快照信息 opt 该批次该受众id下所有TSP信息全部更新 Note right of A: 需要读取全部的用户比对,用户量过大,OOM A->>A: 计算受众规模,取TSP并集合 A->>E: 查询受众的上一条快照信息 E-->>A: 返回快照 A->>A:比对本次和上次的差值 Note right of A: 需要读取全部的用户比对,用户量过大,OOM alt 本次自定义受众数量较上次减少30%(Apollo配置) A->>A: 更新执行记录为待人工确认 else 没有超过百分之30 A->>A: 推送新增用户信息到广告平台Google和Facebook A->>A: 移除减少的用户信息调用广告平台Google和Facebook end end end