001-RocketMQ入门-单机、集群、控制台搭建

入门

为什么用

Kafka 缺点 topic多了会影响性能
所以就对kafka多 topic 性能做了提升

运行单机

修改环境变量

在个人电脑上测试的时候注意需要修改:

添加2个环境变量
NAMESRV_ADDR : localhost:运行的端口(默认:9876)
在这里插入图片描述
在这里插入图片描述
修改一个配置文件
conf/broker.conf
新增一行 autoCreateTopicEnable=true

启动

修改JVM参数:
runserver.cmd/sh
001-RocketMQ入门-单机、集群、控制台搭建_第1张图片
这里测试用的话512M即可

runbroker.cmd/sh
001-RocketMQ入门-单机、集群、控制台搭建_第2张图片
broker的默认配置为8g

启动 mqnamesrv.cmd

### 在rocketMq住目录后台启动namesrv
$ nohup sh bin/mqnamesrv &

### 验证namesrv是否启动成功
$ tail -f nohup.out
### 如果有The Name Server boot success.则启动成功

启动 mqbroker.cmd

### 先启动broker  proxy默认端口:8080  broker默认端口:10911
$ nohup sh bin/mqbroker -n localhost:9876 --enable-proxy &

#日志中打印 rocketmq-proxy startup successfully 则为启动成功

如果需要修改broker的默认端口

# 修改 conf/broker.conf 文件 添加
listenPort=对应的端口

# 重新启动需要指定配置文件 可以使用不带proxy启动
nohup sh bin/mqbroker -n localhost:9876 -c conf/broker.conf &

#日志中打印 The broker[broker-a, brokerIp:brokerPort] boot success 则为启动成功

工具测试发消息

## 利用环境变量NAMESRV_ADDR 告诉客户端NameServer的地址
$ export NAMESRV_ADDR=localhost:9876
$ sh bin/tools.sh org.apache.rocketmq.example.quickstart.Producer

工具测试消费消息

$ sh bin/tools.sh org.apache.rocketmq.example.quickstart.Consumer

整体架构

Broker

处理消息收发的服务

NameServer

Broker注册到注册中心

集群环境搭建

修改hosts
在这里插入图片描述
三个机器指定一个简单的域名
配置免密
规划集群
注册中心 broker 主从

集群架构

001-RocketMQ入门-单机、集群、控制台搭建_第3张图片

主题状态

001-RocketMQ入门-单机、集群、控制台搭建_第4张图片
由控制台上的内容可知
每个Topic默认每台机器上创建了4个MessageQueue
并且分在在各个broker上
最小位点就是此时清理之后的其实offset
因为第一次还没有开始清理所以为0
最大位点就是一共生产消息的offset

消费管理

001-RocketMQ入门-单机、集群、控制台搭建_第5张图片
列出消费者订阅情况
订阅组就是消费者自己设置的订阅信息, 如果有多个就显示多个表单
代理者位点:在队列上分配消息的offset
消费这位点:在队列上消费消息的offset

你可能感兴趣的:(RocketMQ,java-rocketmq,rocketmq,java)