2.10日学习打卡----初学RocketMQ(一)

2.10日学习打卡

对于MQ(Message queue)消息队列的一些解释可以看我原来写的文章 初学RabbitMQ

各大MQ产品比较


一.RocketMQ概述

发展历程

RocketMQ概念术语

  • 生产者和消费者
    生产者负责生产消息,一般由业务系统负责生产消息,消费者即后台系统,它负责消费消息。
  • 消息模型(Message Model)
    消息模型主要有队列模型和发布订阅模型,RabbitMQ采用的是队列模型,如下图所示

    RocketMQ采用发布订阅模型,模型如图所示:
  • 主题(Topic)

表示一类消息的集合,每个主题包含若干条消息,每条消息只能属于一个主题,是RocketMQ进行消息订阅的基本单位。

  • 代理服务器(Broker Server)

消息中转角色,负责存储消息、转发消息。

  • 名字服务(Name Server)

名称服务管理代理服务器broker,相当于一个管理机构。

  • 生产者组(Producer Group)

    同一类Producer的集合,这类Producer发送同一类消息且发送逻辑一致。

  • 消费者组(Consumer Group)

同一类Consumer的集合,这类Consumer通常消费同一类消息且消费逻辑一致。

  • 拉取式消费(Pull Consumer)

Consumer消费的一种类型,应用通常主动调用Consumer的拉消息方法从Broker服务器拉消息、主动权由应用控制。一旦获取了批量消息,应用就会启动消费过程。

  • 推动式消费(Push Consumer)

Consumer消费的一种类型,该模式下Broker收到数据后会主动推送给消费端,该消费模式一般实时性较高。

二 . RocketMQ安装与配置

环境搭建与测试

下载地址:https://rocketmq.apache.org/zh/release-notes/

选择第二个 binary 安装

  1. 首先使用rz命令 将文件上传到虚拟机
  2. 解压文件 unzip rocketmq-all-5.1.4-bin-release.zip(自己的版本)
  3. 重命名文件夹名字便于修改 mv rocketmq-all-5.1.4-bin-release rocketmq-5.1.4
  4. 移动文件夹到 /usr/local 目录下 mv rocketmq-5.1.4 /usr/local
  5. 修改环境变量
    vim /etc/profile
xml 复制代码
export JAVA_HOME=/usr/local/jdk-11.0.11/
export PATH=$PATH:$JAVA_HOME/bin
export ROCKETMQ_HOME=/usr/local/rocketmq-5.1.4(自己的版本)
export PATH=$PATH:$ROCKETMQ_HOME/bin
  1. 启动NameServer nohup sh mqnamesrv &
  2. 启动broker nohup sh mqbroker -n localhost:9876

RocketMQ管理命令

mqadmin help 命令名称

  • 启动namesrv和broker

./mqnamesrv #启动nameserver

./mqbroker -n localhost:9876 -c /opt/alibaba-rocketmq/conf/broker.conf #启动broker

  • #启动broker

tail -f ~/logs/rocketmqlogs/namesrv.log

#查看日志

tail -f ~/logs/rocketmqlogs/broker.log

#查看日志

  • 新增topic

mqadmin updateTopic -n localhost:9876 -c DefaultCluster -t topicWarning

  • 查看某个topic的状态

mqadmin topicStatus -n localhost:9876 -t topicWarning

  • 查看所有消费组group

mqadmin consumerProgress -n localhost:9876

  • 查看所有topic

mqadmin topicList -n localhost:9876

  • 删除topic

mqadmin deleteTopic -n localhost:9876 -c DefaultCluster -t topicWarning

  • 关闭namesrv和broker服务

mqshutdown namesrv

mqshutdown broker

如果我的内容对你有帮助,请点赞,评论,收藏。创作不易,大家的支持就是我坚持下去的动力!

相关推荐
2301_783360139 分钟前
【学习笔记】关于RNA_seq和Ribo_seq技术的对比和BAM生成
笔记·学习
qq_3977315110 分钟前
Objective-C 学习笔记(第9章)
笔记·学习·objective-c
ujainu39 分钟前
Python学习第一天:保留字和标识符
python·学习·标识符·保留字
sheji341640 分钟前
【开题答辩全过程】以 基于Java的应急安全学习平台的设计与实现为例,包含答辩的问题和答案
java·开发语言·学习
喵了meme1 小时前
Linux学习日记21:读写锁
linux·c语言·学习
好奇龙猫1 小时前
日语学习-日语知识点小记-构建基础-JLPT-N3阶段-二阶段(29):第八科文法
学习
崇山峻岭之间2 小时前
C++ Prime Plus 学习笔记041
c++·笔记·学习
万岳科技系统开发2 小时前
私域直播小程序源码的整体架构设计与实现思路
学习·小程序
richxu202510012 小时前
嵌入式学习之路>单片机核心原理篇>(11) 存储器(Flash & SRam)
单片机·嵌入式硬件·学习
sszdlbw2 小时前
后端springboot框架入门学习--第二篇
java·spring boot·学习