领域驱动设计-慕课网

类型
软件架构
学习时间
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 任务执行记录的受众快照(ESA->>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
 

Loading Comments...