rocketMq概念介绍

简介: rocketMq官网    http://rocketmq.apache.org/rocketMq逻辑概念介绍rocketMq逻辑图备注:    改图片分享自李占卫的网上家园说明:    在rocketMq的中核心4组件为namesrv、broker、consumer、producer。

rocketMq官网

    http://rocketmq.apache.org/

rocketMq逻辑概念介绍

img_a9be193f7748a996358e2d625ace67a4.png
rocketMq逻辑图

备注
    改图片分享自李占卫的网上家园

说明

    在rocketMq的中核心4组件为namesrv、broker、consumer、producer。

    broker:消息存储中心,主要用来存储消息并通过namesrv对外提供服务。

    namesrv:无状态的注册中心,功能用来保存broker的相关的元信息并提供给producer在发送消息过程中和提供给consumer消费消息过程中查找broker信息。

    producer:消息生产者,通过namesrv获取broker的地址并发送消息。

    consumer:消息消费者,通过namesrv获取broker的地址并消费消息。



rocketMq部署情况介绍

img_5e26d74e1a681a90be14e20c721ab06e.png
rocketMq部署图


img_35d7b0147b2734305a18b825b9f641de.png
rocketMq的集群概念细分

说明

    rocketMq实际部署图,每个组件都可以用集群形式出现。

    producer:通过producerGroup的名字来标记自己是一个集群。

    consumer:通过consumerGroup的名字来标记自己是一个集群。

    namesrv:相互之间无通信,通过部署多台机器来标记自己是一个伪集群。

    broker:通过clusterName来标记集群,每个broker通过clusterName来表明cluster层面集群,通过brokerName来标明broker层面集群,通过brokerId标明主从身份。


rocketMq消息存储介绍

img_1889242e774753be0a06a5d4af989c7f.png
rocketMq消息存储

说明:

    rocketMq的消息存储通过二级索引来进行,其中实际消息存储在Commit Log的逻辑队列中(磁盘文件消息顺序写),consume queue保存着每个消息消费队列的待消费的数据并且指向commit Log。


rocketMq线上配置介绍

img_3cb67cb11a68ed1a8525cf90de2d481b.png
rocketMq实际数据存储

说明:

    rocketMq线上环境的真实存储,每个broker的存储数据格式就是类似上图。

    config目录

        consumerFilter:保存consumer端的消息过滤配置,应该是等消费端配置了过滤规则就会在这个文件中增加记录。

        consumerOffset:消费进度偏移量,以topic@consumerGroup作区别,0:125的0代表队列,125代表消费偏移量。

img_e56512eb0a58064540049c457d3c6aff.png
consumerOffset

        delayOffset:延迟队列消费进度,其中2代表延迟粒度,2000代表消费进度。

img_daf242462501d2b8114f5656d44039ed.png
delayOffset

        subscriptionGroup:表示订阅消费的消费组。

img_43c71d2c84db17f951adc4d0c2ee2170.png
subscriptionGroup

        topic:rocketMq中topic的信息,可以理解topic为业务消息分组的粒度,一般一个topic为一类业务的逻辑消息集合。

img_109a4bf15538c5c73c2170453d3fc514.png
topic 


commitlog目录

    rocketMq实际存储消息的位置。

consumequeue目录

    %DLQ%@ConsumeGroupA:消费分组的死信队列,保存指向commit log的索引。

    %RETRY%@ConsumeGroupA:消费分组的充实队列,保存指向commit log的索引。

    SCHEDULE_TOPIC_XXXX:延迟消息队列,保存指向commit log的索引。

    TOPICA:topic的消费队列存储,保存指向commit log的索引。

相关实践学习
快速体验阿里云云消息队列RocketMQ版
本实验将带您快速体验使用云消息队列RocketMQ版Serverless系列实例进行获取接入点、创建Topic、创建订阅组、收发消息、查看消息轨迹和仪表盘。
消息队列 MNS 入门课程
1、消息队列MNS简介 本节课介绍消息队列的MNS的基础概念 2、消息队列MNS特性 本节课介绍消息队列的MNS的主要特性 3、MNS的最佳实践及场景应用 本节课介绍消息队列的MNS的最佳实践及场景应用案例 4、手把手系列:消息队列MNS实操讲 本节课介绍消息队列的MNS的实际操作演示 5、动手实验:基于MNS,0基础轻松构建 Web Client 本节课带您一起基于MNS,0基础轻松构建 Web Client
目录
相关文章
|
消息中间件 中间件 数据安全/隐私保护
RabbitMQ 的核心概念
RabbitMQ 的核心概念
122 2
|
6月前
|
消息中间件 存储 Kafka
一文带你从入门到实战全面掌握RocketMQ核心概念、架构部署、实践应用和高级特性
本文详细介绍了分布式消息中间件RocketMQ的核心概念、部署方式及使用方法。RocketMQ由阿里研发并开源,具有高性能、高可靠性和分布式特性,广泛应用于金融、互联网等领域。文章从环境搭建到消息类型的实战(普通消息、延迟消息、顺序消息和事务消息)进行了全面解析,并对比了三种消费者类型(PushConsumer、SimpleConsumer和PullConsumer)的特点与适用场景。最后总结了使用RocketMQ时的关键注意事项,如Topic和Tag的设计、监控告警的重要性以及性能与可靠性的平衡。通过学习本文,读者可掌握RocketMQ的使用精髓并灵活应用于实际项目中。
4939 9
 一文带你从入门到实战全面掌握RocketMQ核心概念、架构部署、实践应用和高级特性
|
消息中间件 存储 网络协议
消息中间件RabbitMQ---概述和概念 【一】
该文章提供了对消息中间件RabbitMQ的全面概述,包括其核心概念、工作原理以及与AMQP和JMS的关系。
消息中间件RabbitMQ---概述和概念 【一】
|
消息中间件 负载均衡 算法
【RocketMQ系列十二】RocketMQ集群核心概念之主从复制&生产者负载均衡策略&消费者负载均衡策略
【RocketMQ系列十二】RocketMQ集群核心概念之主从复制&生产者负载均衡策略&消费者负载均衡策略
632 2
|
消息中间件 NoSQL 关系型数据库
【RocketMQ系列十三】RocketMQ的集群核心概念之消费重试&死信队列&幂等消息的出现以及处理
【RocketMQ系列十三】RocketMQ的集群核心概念之消费重试&死信队列&幂等消息的出现以及处理
888 1
|
消息中间件 存储 RocketMQ
【RocketMQ系列十】RocketMQ的核心概念说明
【RocketMQ系列十】RocketMQ的核心概念说明
426 1
|
消息中间件 存储 中间件
【主流技术】聊一聊消息队列 RocketMQ 的基本结构与概念
2.6Broker 代理服务器(Broker)是消息中转角色,负责存储消息、转发消息。代理服务器在 RocketMQ 系统中负责接收从生产者发送来的消息并存储、同时为消费者的拉取请求作准备。代理服务器也存储消息相关的元数据,包括消费者组、消费进度偏移和主题和队列消息等。 2.7Pull Consumer 拉取式消费(Pull Consumer)是 Consumer 消费的一种类型,也是默认的类型。下游应用系统通常主动调用 Consumer 的拉消息方法从 Broke r服务器拉消息,即主动权由下游应用控制。一旦获取了批量消息,应用就会启动消费过程。
543 0
|
消息中间件 存储 物联网
RocketMQ基础概念
RocketMQ基础概念
251 1
|
消息中间件 存储 Apache
RocketMQ实战教程之常见概念和模型
Apache RocketMQ 实战教程介绍了其核心概念和模型。消息是基本的数据传输单元,主题是消息的分类容器,支持字节、数字和短划线命名,最长64个字符。消息类型包括普通、顺序、事务和定时/延时消息。消息队列是实际存储和传输消息的容器,是主题的分区。消费者分组是一组行为一致的消费者的逻辑集合,也有命名限制。此外,文档还提到了一些使用约束和建议,如主题和消费者组名的命名规则,消息大小限制,请求超时时间等。RocketMQ 提供了多种消息模型,包括发布/订阅模型,有助于理解和优化消息处理。
|
消息中间件 安全 Java
一文读懂RabbitMQ核心概念及架构
一文读懂RabbitMQ核心概念及架构