随笔分类 - RocketMQ
发表于 2022-02-13 11:55阅读:662评论:0推荐:1
摘要:NameServer介绍 Name Server 是专为 RocketMQ 设计的轻量级名称服务,具有简单、可集群横吐扩展、无状态,节点之间互不通信等特点。整个Rocketmq集群的工作原理如下图所示: 可以看到,Broker集群、Producer集群、Consumer集群都需要与NameServe
阅读全文 »
发表于 2022-02-13 00:16阅读:1084评论:0推荐:1
摘要:本文深入的分析了RocketMQ的Rebalance机制,主要包括以下内容: Rebalance必要的元数据信息的维护 Broker协调通知机制; 消费者/启动/运行时/停止时Rebalance触发时机 单个Topic的Rebalance流程 分区分配策略 RocketMQ与Kafka Rebala
阅读全文 »
发表于 2022-02-12 22:11阅读:1826评论:0推荐:0
摘要:在实际开发中,经常需要查看MQ中消息的内容,RocketMQ提供了多种消息查询方式,给开发和运维带来了极大的便利,一些其他消息中间件,如Kafka,并不具备消息查询能力。 本文对RocketMQ提供到的查询机制和背后原理进行深入的介绍。文章主要包括3个部分: 消息查询介绍:介绍消息查询中使用到的Me
阅读全文 »
发表于 2022-02-12 21:19阅读:2076评论:0推荐:2
摘要:延迟消息是实际开发中一个非常有用的功能,本文第一部分从整体上介绍秒级精度延迟消息的实现思路,在第二部分结合RocketMQ的延迟消息实现,进行细致的讲解,点出关键部分的源码。第三步介绍延迟消息与消息重试的关系。 延迟消息介绍 基本概念:延迟消息是指生产者发送消息发送消息后,不能立刻被消费者消费,需要
阅读全文 »
发表于 2021-12-08 14:44阅读:422评论:0推荐:1
摘要:官方地址:https://github.com/apache/rocketmq-dashboard git clone https://github.com/apache/rocketmq-dashboard.git mvn spring-boot:run 修改配置文件 指定NameSrv地址 ro
阅读全文 »
发表于 2021-11-01 18:49阅读:116评论:0推荐:0
摘要:源码拉取 Github访问慢,同步Github代码到Gitee仓库。官方地址: GitHub仓库快速导入Gitee及同步更新 目录结构 目录 说明 acl 访问控制模块 broker: broker 模块(broke 启动进程) client 消息客户端,包含消息生产者、消息消费者相关类 commo
阅读全文 »
发表于 2021-09-03 15:09阅读:128评论:0推荐:0
摘要:消息存储 消息存储是RocketMQ中最为复杂和最为重要的一部分,本节将分别从RocketMQ的消息存储整体架构、PageCache与Mmap内存映射以及RocketMQ中两种不同的刷盘方式三方面来分别展开叙述。 消息存储整体架构 消息存储架构图中主要有下面三个跟消息存储相关的文件构成。 Commi
阅读全文 »
发表于 2021-09-03 14:01阅读:86评论:0推荐:0
摘要:技术架构 RocketMQ架构上主要分为四部分,如上图所示: Producer:消息发布的角色,支持分布式集群方式部署。Producer通过MQ的负载均衡模块选择相应的Broker集群队列进行消息投递,投递的过程支持快速失败并且低延迟。 Consumer:消息消费的角色,支持分布式集群方式部署。支持
阅读全文 »
发表于 2021-09-02 17:18阅读:212评论:0推荐:0
摘要:基本概念 1 消息模型(Message Model) RocketMQ主要由 Producer、Broker、Consumer 三部分组成, Producer 负责生产消息 Consumer 负责消费消息 Broker 负责存储消息。 Broker 在实际部署过程中对应一台服务器,每个 Broker
阅读全文 »