|
|
@ -104,12 +104,57 @@
|
|
|
|
## 3. 核心链路 (*)
|
|
|
|
## 3. 核心链路 (*)
|
|
|
|
配置回调地址及参数 -> 检测回调结果进行入库 -> 提供接口进行查询 -> 导出查询后的结果
|
|
|
|
配置回调地址及参数 -> 检测回调结果进行入库 -> 提供接口进行查询 -> 导出查询后的结果
|
|
|
|
|
|
|
|
|
|
|
|
## 4. 涉及核心技术及框架
|
|
|
|
## 4. 核心流程设计
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### 4.1 资源汇聚处理流程设计
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
主链路: 资源回调 -> 存储 -> 分发 -> 消息通知
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(网关层)
|
|
|
|
|
|
|
|
get/post 类型的回调请求(日志记录)
|
|
|
|
|
|
|
|
-> 参数匹配解析到不同的类型的处理
|
|
|
|
|
|
|
|
-> 发送给不同类型的处理(函数线程)
|
|
|
|
|
|
|
|
-> 对请求记录进行记录(mongoDB入库记录)
|
|
|
|
|
|
|
|
-> 封装请求调用具体的业务服务
|
|
|
|
|
|
|
|
(业务层)
|
|
|
|
|
|
|
|
-> 接收网关层的调用
|
|
|
|
|
|
|
|
-> 必要的字段解析处理
|
|
|
|
|
|
|
|
-> 根据分表分库策略进行入库
|
|
|
|
|
|
|
|
-> 更新查询缓存
|
|
|
|
|
|
|
|
-> [异步]传递新的资源给引擎进行处理
|
|
|
|
|
|
|
|
(引擎层)
|
|
|
|
|
|
|
|
-> 接收业务层服务给的数据
|
|
|
|
|
|
|
|
-> 标签计算引擎可以对数据进行标准化标签打标
|
|
|
|
|
|
|
|
-> 资源分配引擎进行资源分配处理[这里包含数据的脱敏处理]
|
|
|
|
|
|
|
|
(业务层)
|
|
|
|
|
|
|
|
-> 接收引擎层给的回调
|
|
|
|
|
|
|
|
-> 存储基础标签
|
|
|
|
|
|
|
|
-> 根据资源分配建立和业务和业务员的对应关系
|
|
|
|
|
|
|
|
(引擎层)
|
|
|
|
|
|
|
|
-> 业务层的数据
|
|
|
|
|
|
|
|
-> 标签数据进入搜索引擎来支撑查询和分词高亮排序等
|
|
|
|
|
|
|
|
-> 资源进线消息进入消息队列进行通知
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### 4.2 对接系统功能点统一思路设计
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
主链路: 所选资源准备 -> 资源对外引擎处理[脱敏,格式化] -> 记录状态跟踪[工作流或者任务生命周期跟踪] -> 回调处理 -> 消息通知 + 定时任务进行检查状态终结
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(业务层)
|
|
|
|
|
|
|
|
-> 准备所选的资源(格式化/API文档对接)
|
|
|
|
|
|
|
|
-> 选择发送模式(定时任务/基础异步任务)
|
|
|
|
|
|
|
|
(引擎层)
|
|
|
|
|
|
|
|
-> 定时任务引擎
|
|
|
|
|
|
|
|
(业务层)
|
|
|
|
|
|
|
|
-> 发送回调
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
## 5. 涉及核心技术及框架
|
|
|
|
|
|
|
|
|
|
|
|
储存中间件 : 分表分库(ShardingJDBC)
|
|
|
|
储存中间件 : 分表分库(ShardingJDBC)
|
|
|
|
框架技术选型 : SpringBoot , JPA
|
|
|
|
框架技术选型 : SpringBoot , JPA
|
|
|
|
数据存储选型 : Mysql , ES
|
|
|
|
数据存储选型 : Mysql , ES
|
|
|
|
中间件: RocketMQ, 缓存, Canal
|
|
|
|
中间件: RocketMQ, 缓存, Canal
|
|
|
|
|
|
|
|
|
|
|
|
## 5. 开发团队
|
|
|
|
## 6. 开发团队
|
|
|
|
|
|
|
|
|
|
|
|
百业研发团队
|
|
|
|
百业研发团队
|
|
|
|
|
|
|
|
|