RabbitMQ相关面试题

用到了哪些MQ?什么使用场景?MQ的组成部分?MQ宕机了怎么办?如何进行持久化的?
MQ的选型?
Kafka:高吞吐量、低延迟的分布式消息队列,主要用于大规模数据处理和流式处理
RocketMQ:RocketMQ是阿里巴巴开源的分布式消息队列,具有高吞吐量、低延迟、高可靠性等特点
RabbitMQ:易于使用的消息队列,支持多种消息传递模式,如点对点和发布-订阅。它具有较好的可靠性和稳定性,支持消息持久化,保证消息不会丢失

为什么选择RabbitMQ?
使用场景是多个业务服务产生的日志要发送给日志服务进行处理,结合业务背景跟技术选型当初选择了RabbitMQ,比较容易上手,并且SpringBoot项目集成了
1、使用简单,功能强大
2、基于AMQP协议
3、社区活跃,文档完善
4、高并发性能好,这主要得益于Erlang语言
5、SpringBoot默认已集成RabbitMQ
组成部分说明:
Producer:消息生产者,即生产方客户端,生产方客户端将消息发送到MQ
Broker:消息队列服务进程,此进程包括两个部分:Exchange和Queue
Exchange:消息队列交换机,按一定的规则将消息路由转发到某个队列,对消息进行过滤
Queue:消息队列,存储消息的队列,消息到达队列并转发给指定的消费方
Consumer:消息消费者,即消费方客户端,接收MQ转发的消息

RabbitMQ在项目中有哪些使用场景?

你可能感兴趣的:(面试,rabbitmq,分布式)