关于java:项目技术点总结

40次阅读

共计 288 个字符,预计需要花费 1 分钟才能阅读完成。

接管领取后果音讯

  1. 付款是批量付款,一个付款对应多个付款详情,须要对多个供应商付款。
  2. 因为同时付款所以领取后果 mq 根本也是同时接管到。
  3. 业务诉求,当领取详情都收到领取后果后,领取单状态变为领取实现。
  4. 解决计划,以付款单 id 为纬度进行加锁。
  5. 不加锁结果:有 A、B 两个领取 详情,线程 1 收到领取胜利音讯,更新 A 为领取胜利,查问是否所有都已领取胜利,这时 B 尚未领取胜利,所以不更新付款单状态为领取实现;在 A 线程提交事务前,线程 2 收到 B 领取胜利音讯,更新 B 为领取胜利,而后查问是否都已领取,因为此时 A 线程尚未提交,所以查问的是 A 线程还未领取,不更新付款单状态。最终造成付款单状态不可能变为领取实现。
正文完
 0