标签:hang com 成本 document data- 北京 结果 height cto
ylbtech-阿里云-ONS-Help-产品介绍-消息类型:事务消息 |
1.返回顶部 |
本文介绍消息队列 RocketMQ 版事务消息的概念、适用场景、交互流程以及使用过程中的注意事项。
事务消息的适用场景示例:
通过购物车进行下单的流程中,用户入口在购物车系统,交易下单入口在交易系统,两个系统之间的数据需要保持最终一致,这时可以通过事务消息进行处理。交易系统下单之后,发送一条交易下单的消息到消息队列 RocketMQ 版,购物车系统订阅消息队列 RocketMQ 版的交易下单消息,做相应的业务处理,更新购物车数据。
事务消息发送步骤如下:
事务消息回查步骤如下:
ONSFactory.createTransactionProducer
创建事务消息的 Producer 时必须指定 LocalTransactionChecker
的实现类,处理异常情况下事务消息的回查。execute
方法中返回以下三种状态:
TransactionStatus.CommitTransaction
:提交事务,允许订阅方消费该消息。TransactionStatus.RollbackTransaction
:回滚事务,消息将被丢弃不允许消费。TransactionStatus.Unknow
:暂时无法判断状态,等待固定时间以后消息队列 RocketMQ 版服务端向发送方进行消息回查。Message message = new Message(); // 在消息属性中添加第一次消息回查的最快时间,单位秒。例如,以下设置实际第一次回查时间为 120 秒 ~ 125 秒之间 message.putUserProperties(PropertyKeyConst.CheckImmunityTimeInSeconds,"120"); // 以上方式只确定事务消息的第一次回查的最快时间,实际回查时间向后浮动 0 秒 ~ 5 秒;如第一次回查后事务仍未提交,后续每隔 5 秒回查一次
收发事务消息的示例代码如下:
2.返回顶部 |
3.返回顶部 |
4.返回顶部 |
5.返回顶部 |
6.返回顶部 |
作者:ylbtech 出处:http://ylbtech.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 |
标签:hang com 成本 document data- 北京 结果 height cto
原文地址:https://www.cnblogs.com/storebook/p/12594776.html