消息队列rocketmq基本概念
这份笔记系统梳理 RocketMQ 的基础消息模型,先从 NameServer、Broker、Producer、Consumer 的分工讲起,说明 NameServer 只负责 Topic 到 Broker 的路由发现,真正的消息接收、磁盘存储与转发由 Broker 完成。文章重点拆解 Broker 内部组件,包括追加写入消息的 CommitLog、按 Topic-Queue 建索引的 ConsumeQueue、按 Key 查询历史消息的 IndexFile,以及刷盘检查点、主从同步和网络请求处理等配套能力。核心术语部分覆盖 Topic、MessageQueue、Queue ID、Offset、Tag、Key 等概念,帮助读者理解消息如何被路由、过滤、定位和记录消费进度。消息模式部分进一步区分 Pull 与基于长轮询的 Push 体验,并说明顺序消息需要将同一业务 Key 路由到同一队列且串行消费,而并行消费依赖多队列提升吞吐但不保证全局顺序。对于事务消息和延迟消息,文章给出半消息、本地事务回查、delayTimeLevel、延迟队列再投递等实现思路,同时提示延迟精度受预设级别限制。最后围绕消费可靠性解释重试次数、死信队列和 ACK 返回状态的关系,强调取到消息不等于消费成功,只有返回 CONSUME_SUCCESS 才会推进消费进度,异常或 RECONSUME_LATER 会触发重试直至进入 DLQ,适合后端开发者建立 RocketMQ 入门认知和排障框架。
![rocketmq 配置环境[python]](https://cdn.jacin.me/discourse/original/1X/103b1317f100dc47d73f47b37b6aee7f70194850.jpeg)