rocketmq-producer之发送事物消息

RocketMQ提供普通、顺序及事务消息支持。事务消息通过发送prepared消息并执行本地事务来协调多个小事务。在消息状态确认过程中,如果消息发送失败,RocketMQ会定期检查并调用TransactionCheckListener进行相应操作。本地事务状态包括COMMIT_MESSAGE、ROLLBACK_MESSAGE和UNKNOW。发送事务消息涉及LocalTransactionState更新、endTransaction方法以及broker的回查线程。发送时必须设置groupname,以便回查时选择producer。
摘要由CSDN通过智能技术生成

rocketmq支持普通消息、顺序消息,此外,还支持事物消息。实现方式是将一个大事务拆分成多个小事物异步执行,事物消息在其中起着桥梁作用。

这里写图片描述

rocketmq在发送事物消息时,会先发送一个prepared消息,返回消息所在地址。然后再执行本地事物,根据事物执行结果去更新prepared消息状态。消息接收者只能消费消息集群中消息状态为已提交的消息。

事物消息demo:

TransactionMQProducer producer = new TransactionMQProducer("unique_group_name");
TransactionCheckListener transactionCheckListener = new TransactionCheckListenerImpl();
producer.setTransactionCheckListener(transactionCheckListener);
TransactionExecuterImpl tranExecuter = new Transac
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值