赞
踩
Lunix系统:Centos7.5
安装软件:rabbitmq
开发工具:IDEA
Rabbitmq实现多系统间的分布式事务,保证数据一致性
rabbitmq作为消息中间件
订单中心和运单中心分别作为消息的生产者和消息的消费者,通过rabbitmq传递消息
订单中心作为生产者,模拟用户创建订单,在本地持久化订单信息,记录消息的状态信息,并将消息发送到rabbitmq,同时开启confirm机制,接收消息中间件rabbitmq的响应信息,更新本地消息发送状态(定时任务轮训消息状态信息表,一定时间内未发送成功的数据将再次发起推送,保证atlest
once.
运单中心作为消费者,消费rabbitmq中的订单信息,开启ack确认机制,确保不遗漏订单。并通过消息全局唯一ID保证数据的唯一性,不重复处理订单。
利用Rabbitmq发布确认机制(confirm),确保发送成功的数据能被通知到
做个定时任务轮训发送失败以及发送后未响应的订单信息,重新发送
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!--rabbitmq-->
<
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。