消息队列MQ

1.为什么使用消息队列

2.如何选择合适的消息队列

2.1 RabbitMQ:路由灵活、消息可靠性高 | 吞吐量中等

优点

缺点

2.2 Kafka 吞吐量极强 | 默认可靠性低、时延高

优点

缺点

2.3RocketMQ 兼顾高吞吐和高可靠 | 生态较弱

优点

缺点

3.RabbitMQ如何保证消息不丢失 生产者-消息-交换器-队列-消费者

3.1 确保消息到MQ:发送方的确认模式

打开消息发送确认的开关

设置回调函数

3.2消息路由到正确的队列:路由失败通知

开启失败通知;消息路由失败,通知

3.3确保消息在队列正确的存储:交换器、队列、消息都需要持久化

保存到磁盘中

3.4确保消息从队列中正确投递到消费者:手动确认->交给消费者确认

4.什么是MQ中的消息重复

第一类:生产者重复发送

第二类:中间件重复发送

5.如何解决MQ中的重复消息 幂等性

6.如何进行RocketMQ的性能调优

相关推荐
Jabes.yang5 小时前
互联网大厂Java面试:从缓存技术到安全框架的深度探索
消息队列·java面试·缓存技术·互联网大厂·安全框架
235166 小时前
【MQ】RabbitMQ:架构、工作模式、高可用与流程解析
java·分布式·架构·kafka·rabbitmq·rocketmq·java-rabbitmq
埃泽漫笔6 小时前
RabbitMQ为什么使用AMQP协议
rabbitmq
xrkhy7 小时前
分布式之RabbitMQ的使用(3)QueueBuilder
分布式·rabbitmq
埃泽漫笔9 小时前
RabbitMQ 消息可靠投递
rabbitmq
無限神樂10 小时前
RabbitMQ概述,Rabbitmq是什么
分布式·rabbitmq
会跑的葫芦怪11 小时前
RocketMQ 与 RabbitMQ 全面对比:架构、性能与适用场景解析
架构·rabbitmq·rocketmq
埃泽漫笔11 小时前
Rabbitmq如何避免消息丢失
rabbitmq
2301_7683502311 小时前
RabbitMq工作流程
分布式·rabbitmq