排序
面试题: 说一下 AMQP 协议?
AMQP(Advanced Message Queuing Protocol,高级消息队列协议)是一个开放标准的应用层协议,用于消息中间件的通信。它定义了消息的格式、传输方式以及消息队列的行为,使得不同厂商的消息队列...
面试题:说一下 RabbitMQ 的事务机制?
RabbitMQ 的事务机制是一种确保消息可靠传递的方式,通过事务可以保证一系列消息的发送和确认操作是原子性的。以下是 RabbitMQ 事务机制的详细介绍: 1. 事务机制的作用 原子性:确保一组操作要...
面试题:RabbitMQ 中主要有哪几个角色或者说概念?
RabbitMQ 是一个基于 AMQP(高级消息队列协议)的消息队列系统,其核心架构中包含多个重要的角色和概念。以下是 RabbitMQ 中的主要角色和概念: 1. 生产者(Producer) 角色:消息的发送者。 职...
面试题:RabbitMQ 的 routing key 和 binding key 的最大长度是多少字节?
在 RabbitMQ 中,routing key 和 binding key 的长度是有限制的,具体取决于 RabbitMQ 的版本和配置。 1. 默认长度限制 RabbitMQ 3.8.x 及更高版本: routing key 和 binding key 的最大长度默...
面试题:说说 RabbitMQ 的工作模式?
RabbitMQ 是一个功能强大的消息队列中间件,支持多种工作模式(也称为消息模式或交换类型),以满足不同的业务需求。以下是 RabbitMQ 的主要工作模式及其特点: 1. 简单模式(Simple Mode) 描...
面试题:说说 RabbitMQ 的集群模式?
RabbitMQ 的集群模式是其实现高可用性和负载均衡的核心机制。RabbitMQ 集群通过将多个节点组成一个逻辑上的消息队列系统,共享元数据和状态,从而实现消息的分布式处理。以下是 RabbitMQ 集群模...
面试题:为什么 RocketMQ 不使用 Zookeeper 作为注册中心呢?而选择自己实现 NameServer?
RocketMQ 选择自己实现 NameServer 而不是使用 Zookeeper 作为注册中心,主要基于以下几个原因: 1. 轻量级设计 Zookeeper 的复杂性:Zookeeper 是一个分布式协调服务,功能强大但相对较重,引...
面试题:说一下 Kafka 为什么性能高?
Kafka 之所以性能高,主要得益于以下几个关键设计: 1. 顺序读写 Kafka 将消息顺序写入磁盘,避免了随机 I/O 操作。顺序读写比随机读写快得多,尤其是在机械硬盘上。 消费者也是顺序读取消息,...
面试题:RabbitMQ 怎么实现延迟队列?
1. 使用 RabbitMQ 官方插件 rabbitmq_delayed_message_exchange 这是最直接的方式。RabbitMQ 提供了一个官方插件 rabbitmq_delayed_message_exchange,它允许你创建一个延迟交换机,...