RocketMQ事务消息实战

RocketMQ事务消息阅读目录指引:

RocketMQ源码分析之从官方示例窥探RocketMQ事务消息实现基本思想

RocketMQ源码分析之RocketMQ事务消息实现原理上篇

RocketMQ源码分析之RocketMQ事务消息实现原理中篇----事务消息状态回查

RocketMQ源码分析之事务消息实现原理下篇-消息服务器Broker提交回滚事务实现原理

RocketMQ事务消息实战


我们以一个订单流转流程来举例,例如订单子系统创建订单,需要将订单数据下发到其他子系统(与第三方系统对接)这个场景,我们通常会将两个系统进行解耦,不直接使用服务调用的方式进行交互。其业务实现步骤通常为:

1、A系统创建订单并入库。

2、发送消息到MQ。

3、MQ消费者消费消息,发送远程RPC服务调用,完成订单数据的同步。

1、方案一

这里写图片描述

方案弊端:

1、如果消息发送成功,在提交事务的时候JVM突然挂掉,事务没有成功提交,导致两个系统之间数据不一致。

2、由于消息是在事务提交之前提交,发送的消息内容是订单实体的内容,会造成在消费端进行消费时如果需要去验证订单是否存在时可能出现订单不存在。

3、消息发送可以考虑异步发

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值