阅读量:1
消息队列-RabbitMQ
- 1、RabbitMQ是什么?
- 2、RabbitMQ的业务场景有哪些?
- 3、RabbitMQ中有哪基本概念?
- 4、RabbitMQ有哪些工作模式?
- 5、如何保证RabbitMQ消息顺序性?
- 6、RabbitMQ消息如何分发?
- 7、RabbitMQ消息怎么路由?
- 8、为什么会产生重复消费?如何保证消息不被重复消费(如何保证消费幂等性)?
- 9、如何确保消息正确地发送至RabbitMQ?如何确保消息接收方消费了消息?
- 10、RabbitMQ有哪些优缺点?
- 11、AMQP是什么?
- 12、说说AMQP的3层协议?
- 13、AMQP模型有哪些组件?
- 14、生产者Producer是什么?
- 15、消费者Consumer是什么?
- 16、Broker服务节点是什么?有什么作用?
- 17、Queue队列是什么?有什么作用?
- 18、Exchange交换器是什么?
- 19、RoutingKey路由键是什么?
- 20、RabbitMQ提供了哪些类型的交换器?
- 21、说说生产者发送消息的过程?
- 22、说说消费者接收消息的过程?
- 23、交换器无法根据自身类型和路由键找到符合条件队列时,有哪些处理方案?
- 24、死信队列是什么?
- 25、导致的死信队列的原因有哪些?
- 26、死信队列可能带来哪些问题?如何解决?
- 27、什么是延迟队列?
- 28、什么是优先级队列?
- 29、说说RabbitMQ相关的事务机制?
- 30、消费者获取消息的方式有哪些?
- 31、消费者因为某些原因无法处理当前接收的消息如何来拒绝?
- 32、RabbitMQ的vhost是什么?
- 33、RabbitMQ中消息可能有哪些状态?
- 34、如何保证RabbitMQ消息的可靠传输?
- 35、RabbitMQ如何解决消息队列的延时以及过期失效问题?
- 36、RabbitMQ消息队列满了以后该怎么处理?
- 37、RabbitMQ有几百万消息持续积压几小时该怎么处理?
1、RabbitMQ是什么?
RabbitMQ是一个开源的消息队列(Message Queue)系统,用于在分布式系统中存储、转发消息,实现应用间的异步通信。它支持多种消息协议,提供高可用性、可靠性、可扩展性以及多语言客户端,广泛应用于复杂系统的解耦、流量削峰、分布式事务等场景。
2、RabbitMQ的业务场景有哪些?
- 解耦系统组件:通过消息队列解耦生产者和消费者,增强系统的灵活性和可维护性。
- 异步处理:将耗时操作异步化,提升用户体验和系统响应速度。
- 流量削峰:在高流量场景下缓冲请求,保护下游系统不被过载。
- 分布式事务管理:使用消息队列实现分布式系统中的事务一致性。
- 负载均衡:通过消息队列在多个处理节点间分配任务,实现负载均衡。
- 日志收集:将各个系统的日志信息发送到消息队列,统一处理和分析。
- 通知与协作:在系统间实现实时或准实时的通知和数据同步。
- 微服务架构:在基于微服务的架构中,用于微服务间的消息通信。
3、RabbitMQ中有哪基本概念?
- 生产者(Producer):发送消息的应用程序