rabbitmq怎么避免消息丢失 rabbitmq是零拷贝技术吗?
浏览量:3642
时间:2023-04-25 11:26:29
作者:采采
rabbitmq是零拷贝技术吗?
Rabbitmq不是零拷贝技术。rabbitmq是一个分布式消息队列,用来解耦实现异步和流量控制。
RabbitMQ可以删除延迟队列中的某个不需要消费的消息吗?
想知道如何通过业务删除?
高并发场景下,如何保证生产者投递到消息中间件的消息不丢失?
1.让 让我们来看看消息的传递过程。消息分三步发送,如图所示。
2.发送方可以通过这三个步骤确保向mq发送消息的可靠性:
第一步send将消息发送到mq,
在第二步中,mq持久化消息。mq需要保证高可用性,持久化后消息不会丢失。一般有多个副本,raft协议可以用来保证多个副本之间的数据一致性。
步骤3: mq回复发送方,确认消息已经传递。
但是,由于步骤1、步骤2和步骤3可能会失败,因此有必要重试发送请求。如果第一步或第二步失败,直接再试一次。如果步骤3失败,可能会有多条消息,这就需要消费者保证消费的幂等性。
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。