欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

【RocketMQ】基本使用:安装、使用、可视控制台(阿里云搭建踩坑记录)

程序员文章站 2022-03-23 12:29:36
...

1.安装

1).下载安装包

下载地址:http://rocketmq.apache.org/dowloading/releases/

【RocketMQ】基本使用:安装、使用、可视控制台(阿里云搭建踩坑记录)

2). 解压

unzip rocketmq-all-4.5.0-bin-release.zip

2.使用

1). 启动 nameserver

默认情况下,nameserver监听的是9876端口

nohup sh namesrv & 

# 若在云服务器,那么启动时要-n加上公网IP
nohup sh namesrv -n 39.105.136.112:9876 &  

两点注意:

  • 日志在用户目录下(root/logs),查看启动日志tail -f ~/logs/rocketmqlogs/namesrv.log

【RocketMQ】基本使用:安装、使用、可视控制台(阿里云搭建踩坑记录)

  • 若启动时内存不足,需要修改JVM相关配置 vim runserver.sh,修改原来的4g为1g
    【RocketMQ】基本使用:安装、使用、可视控制台(阿里云搭建踩坑记录)

    • Xms 是指设定程序启动时占用内存大小。一般来讲,大点,程序会启动的快一点,但是也可能会导致机器暂时 间变慢。
    • Xmx 是指设定程序运行期间最大可占用的内存大小。如果程序运行需要占用更多的内存,超出了这个设置值, 就会抛出OutOfMemory异常。
    • xmn 年轻代的heap大小,一般设置为Xmx的3、4分之一

2). 启动broker

默认情况下,broker监听的是10911端口

nohup sh mqbroker -n localhost:9876 &

# 若在云服务器还需加上: -n 公网IP -c 配置文件 auto..=true
nohup sh mqbroker -n 39.105.136.112:9876 -c ../conf/broker.conf autoCreateTopicEnable=true & 

特别注意以下两点:

  • 若是云服务器,需要将公网IP配置进broker.conf,brokerIP=公网IP

    【RocketMQ】基本使用:安装、使用、可视控制台(阿里云搭建踩坑记录)

  • tail -f ~/logs/rocketmqlogs/broker.log 查看日志,如果提示找不到文件,则打开当前目录下的 nohup.out 日志文件查看,出现如下日志表示启动失败,提示内存无法分配。修改所需内存vim runbroker.sh,修改8g为512m

【RocketMQ】基本使用:安装、使用、可视控制台(阿里云搭建踩坑记录)

3). 停止服务

sh mqshutdown broker
sh mqshutdown namesrv

3.broker.conf文件分析

默认情况下,启动broker会加载conf/broker.conf文件,这个文件里面就是一些常规的配置信息

【RocketMQ】基本使用:安装、使用、可视控制台(阿里云搭建踩坑记录)

  • brokerClusterName:Cluster名称,如果集群机器数比较多,可以分成多个cluster,每个cluster提供 给不同的业务场景使用
  • brokerName:broker名称,如果配置主从模式,master和slave需要配置相同的名称来表名关系
  • brokerId=0:在主从模式中,一个master broker可以有多个slave,0表示master,大于0表示不同 slave的id
  • brokerRole=SYNC_MASTER/ASYNC_MASTER/SLAVE:表示slave和master消息同步完成后再返回信息给客户端
  • autoCreateTopicEnable = true:topic不存在的情况下自动创建

4.可视控制台

rocket官方提供了一个可视化控制台,地址:https://github.com/apache/rocketmq-externals。这个是rocketmq的扩展,里面不仅包含控制台的扩展,也包含对大数据flume、hbase等组件的对接和扩展。

【RocketMQ】基本使用:安装、使用、可视控制台(阿里云搭建踩坑记录)

1.安装

1). 下载源码包并解压

注:其实对于rocketmq而言,直接用git clone只下载rocketmq-console也行

2). 修改rocketmq-console项目中的application.properties 的namesrvAddr属性

【RocketMQ】基本使用:安装、使用、可视控制台(阿里云搭建踩坑记录)

3). 在rocketmq-console目录下打开命令行,启动springboot项目mvn spring-boot:run

注:若命令行关闭,服务就停了

【RocketMQ】基本使用:安装、使用、可视控制台(阿里云搭建踩坑记录)

2.使用

在浏览器8080端口进行访问

  1. 首页:

【RocketMQ】基本使用:安装、使用、可视控制台(阿里云搭建踩坑记录)

  1. topic:

【RocketMQ】基本使用:安装、使用、可视控制台(阿里云搭建踩坑记录)

  1. Consumer:

【RocketMQ】基本使用:安装、使用、可视控制台(阿里云搭建踩坑记录)

相关标签: 消息队列