实习期间设计的对接同步订单的某块, 缅怀..
设计日期(2016.6)
前言
#对接同步订单模块# 该部分是我入职后自主设计的一个模块,因为初期预计对接5家平台的订单,并考虑到后期可能对接更多平台和平台订单数量等,所以扩展性和性能方面是很值得深思的问题。
开发周期 (20day)
前期需求的多次变更,大大的浪费了开发周期.
- 库表设计
- 接口整理和整合设计(主要是对接平台的接口整合等)
- 代码编写
业务流程图
表
- 商品表,存储商品信息, 主要配合方案匹配
- 授权表,存储用户授权信息,主要用于token管理
- 平台配置表,存储平台key信息
- 方案表,已存在,存储方案信息
v1版
思路图
业务图
原先,该部分设计是不考虑对订单数据进行缓存处理的,但后期需求多次变更被迫进行数据缓存,因此再原先的基础上建立了线程池并对同步订单部分进行异步线程处理,因此增加了一张订单缓存表和事件队列表。
v2版
思路图
业务图
后面又对缓存表进行了数据去重防止表数据爆炸性增长。
总结
- 把公共抽离出来,中间新增转化层可以很好的解决代码复用的问题.