销量更新异步化

来源:8-8 后置流程总结

JaggerChen

2020-01-13

有三个想法,哪个是能接受的呢?
(1)销量可以不必非常精确,直接投递消息给 RocketMQ,不管消费端是否消费成功。可能会引起实际售卖大于销量
(2)将增加销量的逻辑和扣减库存的逻辑放在一起,但是如何保证这两个操作一定会同时执行成功或者失败?如果扣减库存成功了,但是增加销量失败了,返回 RECONSUME_LATER,下次消费端消费的时候,再一次扣减库存怎么办?
(3)在 RocketMQ 中添加销量主题,可以使用同一个 TransactionListener 吗?使用同一个 TransactionListener 会不会导致 createOrder() 被执行多次?
谢谢

写回答

1回答

龙虾三少

2020-01-13

销量可以 消息重复需要做幂等控制

0
1
JaggerChen
请问什么是幂等控制?通用的做法是什么呢?
2020-01-13
共1条回复

聚焦Java性能优化 打造亿级流量秒杀系统(赠秒杀项目)

理解高流量电商网站性能构建思路 用高逼格技术解决性能提升问题

2174 学习 · 1009 问题

查看课程