一、实验环境
Lunix系统:Centos7.5
安装软件:rabbitmq
开发工具:IDEA
二、实验目的
Rabbitmq实现多系统间的分布式事务,保证数据一致性
三、实验方案
rabbitmq作为消息中间件
订单中心和运单中心分别作为消息的生产者和消息的消费者,通过rabbitmq传递消息
订单中心作为生产者,模拟用户创建订单,在本地持久化订单信息,记录消息的状态信息,并将消息发送到rabbitmq,同时开启confirm机制,接收消息中间件rabbitmq的响应信息,更新本地消息发送状态(定时任务轮训消息状态信息表,一定时间内未发送成功的数据将再次发起推送,保证atlest
once.
运单中心作为消费者,消费rabbitmq中的订单信息,开启ack确认机制,确保不遗漏订单。并通过消息全局唯一ID保证数据的唯一性,不重复处理订单。
四、实验步骤
1、消息队列
1.1 rabbitmq安装过程略过。。。。
1.2 创建订单交换器:orderExchange
1.3 创建订单队列:orderQueue
1.4 绑定
2、数据库准备
2.1订单表
2.2 消息发送状态表
2.3 运单表
3、订单中心
3.1 订单中心分析
<