是否有必要使用aftercommit和事务性消息
来源:8-2 事务型消息应用(下)

慕数据5069965
2022-10-27
老师好,
这一节我们为了防止redis扣减和mq发送完消息之后,订单入库出现异常导致不一致,选择将mq发送放到aftercommit方法里,我觉得这里如果直接放到createOrder最后,然后将redistemplate配置成支持事务是不是就能解决所有问题呢?
也就是说逻辑上,redis扣减,订单入库mysql,mq发送异步消息依次执行,这样任何一个地方出现异常都能保证全局的最终一致性吧。
至于老师说的这个线程执行到哪里突然死掉了。。我觉得要是考虑这种情况,那任何只包含mysql的多个操作的事务(例如从A账户取100到B账户),如果在操作中间线程死掉了,也是会导致不一致的吧。。
写回答
2回答
-
龙虾三少
2022-10-27
redis无法支持事务 只能做最终一致方案
012022-10-28 -
龙虾三少
2022-10-27
redis无法支持事务 只能做最终一致方案
00
相似问题