业务层和库存分开不同会话(里程碑2)
2015-12-23 17:31:31 0 举报
在里程碑2中,我们将业务层和库存管理进行了分离,并在不同的会话中进行处理。这意味着,当用户进行业务操作时,系统将在一个独立的会话中处理这些请求,而库存管理则在另一个会话中进行。这种分离有助于提高系统的可扩展性和性能,因为业务逻辑和库存管理可以独立地进行优化和扩展。此外,这种设计还有助于提高系统的可维护性,因为业务层和库存管理可以分别进行更新和维护,而不会影响到彼此的功能。总之,通过将业务层和库存管理分开不同的会话,我们可以实现一个更加高效、可扩展和易于维护的系统。
作者其他创作
大纲/内容
库存不足,返回剩余库存
更改库存
OMS进程事务
有记录
创建队列
插入库存请求记录(需要持久化)
状态
更改请求记录状态
缺点:
失败
xxx
库存服务事务
待确认
1
成功
事务中的其他数据操作
ID
可以支持多个进程上锁
查询库存请求记录
StockRequestRecode
执行成功
1)库存进程的库存请求记录需要持久化
mysql cid
库存进程强制失败
flush
库存充足
插入失败记录
没有记录
逆向恢复库存
OMS数据库
接受请求
优点:
...
判断库存
库存进程数据库
找到待确认的库存记录,进行判断
回传
多个一起flush,可能会失败,失败情况库存进程需要重试
StockQueue
库存更改
库存不足,关闭或者继续后续代码
执行失败
发起库存操作请求
事务中后续操作是否成功
判断状态
返回oms的库存记录
0 条评论
下一页