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

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

相关推荐
Code哈哈笑14 分钟前
【Java 学习】深度剖析Java多态:从向上转型到向下转型,解锁动态绑定的奥秘,让代码更优雅灵活
java·开发语言·学习
QQ同步助手1 小时前
如何正确使用人工智能:开启智慧学习与创新之旅
人工智能·学习·百度
流浪的小新1 小时前
【AI】人工智能、LLM学习资源汇总
人工智能·学习
A懿轩A2 小时前
C/C++ 数据结构与算法【数组】 数组详细解析【日常学习,考研必备】带图+详细代码
c语言·数据结构·c++·学习·考研·算法·数组
南宫生10 小时前
力扣-图论-17【算法学习day.67】
java·学习·算法·leetcode·图论
sanguine__10 小时前
Web APIs学习 (操作DOM BOM)
学习
来一杯龙舌兰12 小时前
【RabbitMQ】RabbitMQ保证消息不丢失的N种策略的思想总结
分布式·rabbitmq·ruby·持久化·ack·消息确认
数据的世界0112 小时前
.NET开发人员学习书籍推荐
学习·.net
四口鲸鱼爱吃盐13 小时前
CVPR2024 | 通过集成渐近正态分布学习实现强可迁移对抗攻击
学习
OopspoO15 小时前
qcow2镜像大小压缩
学习·性能优化