教程目录
RocketMQ 的整体架构?
一、四大角色 Producer:消息生产者。 Consumer:消息消费者,支持 Push/Pull 两种模式。 NameServer:路由注册中心,无状态,可集群部署,节点间不通信。 Broker:消息存储与转发,可主从部署。 二、工作流程 NameServer 启动,Broker 启动后向所有
RocketMQ 支持哪些消息类型?
一、普通消息 最基本的消息,发完即走。 二、顺序消息 同一队列内消息严格有序。发送时用 MessageQueueSelector 把同一业务 key 的消息发到同一队列,消费时同一队列只一个线程消费。 三、延迟消息 消息发送后延迟一段时间才投递。RocketMQ 支持固定延迟级别(1s/5s/10s
RocketMQ 如何保证消息不丢?
一、生产端不丢 同步发送:等待 Broker ACK,失败重试。 开启重试机制:retryTimesWhenSendFailed。 事务消息保证本地事务与消息发送一致。 二、Broker 不丢 同步刷盘:消息写入磁盘才返回成功(flushDiskType=SYNC_FLUSH)。 同步复制:主从都写
RocketMQ 和 Kafka 的区别?
一、对比 维度 RocketMQ Kafka 开发语言 Java Java/Scala 消息模型 Topic/Queue Topic/Partition 顺序消息 支持 支持(分区内) 延迟消息 支持 不原生支持 事务消息 支持 不支持 吞吐量 十万级 百万级 适用场景 业务消息、事务 日志、大数据
RocketMQ 的集群消费和广播消费?
一、集群消费(CLUSTERING) 同一条消息只被消费组内的一个消费者消费。 负载均衡:队列在消费者之间分配。 实际生产中最常用。 二、广播消费(BROADCASTING) 同一条消息被消费组内所有消费者都消费一次。 每个消费者都消费全量消息。 适用于需要所有节点都处理的场景,如配置刷新、缓存失效