1.信息丢失怎么办?
数据丢失问题可能出现在生产者、MQ、消费者中。
1.消息在传递过程中消失
此时可以选择用RabbitMQ提供的事务功能,就是生产者发送数据之前开启事务 `channel.txSelect` ,然后发送信息,如果信息没有被RabbitMQ成功接收,生产者收到异常报错,此时就回滚事务,`channel.txRollback`。如果成功收到消息,就可以提交事务`channel.txCommit`
但是问题是,RabbitMQ 事务机制(同步)一搞,基本上吞吐量会下来,因为太耗性能













网友评论