基于RabbitMQ消息队列的分布式事务解决方案 - MQ分布式消息中间件实战

  1. 云栖社区>
  2. Java技术进阶>
  3. 博客>
  4. 正文

基于RabbitMQ消息队列的分布式事务解决方案 - MQ分布式消息中间件实战

javaedge 2019-11-10 22:10:19 浏览1569
展开阅读全文

1 极速了解MQ

介绍Rabbitmg用于解决分布式事务必须掌握的5个核心概念

一款分布式消息中间件,基于erlang语言开发, 具备语言级别的高并发处理能力。和Spring框架是同一家公司。
支持持久化、高可用

核心5个概念:

  1. Queue: 真正存储数据的地方
  2. Exchange: 接收请求,转存数据
  3. Bind: 收到请求后存储到哪里
  4. 消息生产者:发送数据的应用
  5. 消息消费者: 取出数据处理的应用

2、分布式事务问题

分布式事务是一个业务问题,不能脱离具体的场景。

2.1 分布式事务的几种解决方案

● 基于数据库XA/ JTA协议的方式
需要数据库厂商支持; JAVA组件有atomikos等
● 异步校对数据的方式
支付宝、微信支付主动查询支付状态、对账单的形式;
● 基于可靠消息(MQ)的解决方案
异步场景;通用性较强;拓展性较高
● TCC编程式解决方案
严选、阿里、

网友评论

登录后评论
0/500
评论
javaedge
+ 关注
所属团队号: Java技术进阶