RocketMQ, Dashboard, 控制台安装

这篇具有很好参考价值的文章主要介绍了RocketMQ, Dashboard, 控制台安装。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

文章说明

本文主要说明RocketMQ的控制台(Dashboard)的安装过程。工作中一直用的是别人装好的,这次终于自己亲手装了一遍。
由于每次都要启动三个应用,比较烦,于是我写了一键启动脚本,分享给大家。这个脚本可以一键启动RocketMQ的所有应用。还能自动识别应用是否已经启动成功。

参考说明

本文内容主要来源于马士兵李瑾老师的视频教程(RocketMQ基础实战版),结合了老师的笔记以及根据自己的实践做了一些修改。

控制台(Dashboard)

官网文档:https://rocketmq.apache.org/zh/docs/4.x/deployment/03Dashboard

环境要求

jdk1.8,Maven 3.2.x+

启动前确认:RocketMQ NameServer和Broker已安装且已经启动成功。

下载

新版本地址(推荐):https://rocketmq.apache.org/zh/download

老版本地址下载:https://codeload.github.com/apache/rocketmq-externals/zip/master

本文用的是RocketMQ Dashboard 1.0.0 新版本。

下载成功后解压到一个源代码目录。例如:D:\Workspace\idea\alibaba\rocketmq-dashboard-1.0.0

修改配置

使用idea载入刚才下载好的源代码,然后在settings中确认maven配置正确。

打开src/main/resources/application.properties文件,进行如下配置

# dashboard服务启动之后的端口
server.port=8089
# 配置NameServer地址,如果多个可以以分号隔开
rocketmq.config.namesrvAddr=localhost:9876

打包

执行mvn install -Dmaven.test.skip=true命令,可以在右侧的Maven页签的lifecycle中双击install,同时勾选Skip Test。

成功的话会在target目录生成jar包:rocketmq-dashboard-1.0.0.jar

启动

启动之前,请先确保配置文件中对应的NameSever和Broker已经启动。否则dashboard启动起来也没读取不到内容。

启动有如下方式

  • 通过打出来的jar包启动。cmd进入项目target目录,执行java -jar rocketmq-dashboard-1.0.0.jar
  • 通过代码直接启动。通过启动类org.apache.rocketmq.dashboard.App启动

访问

浏览器输入localhost:8089,成功后即可进行管理端查看。

控制台使用

运维

  • 你可以修改这个服务使用的namesrv的地址

  • 你可以修改这个服务是否使用VIPChannel(如果你的mq server版本小于3.5.8,请设置不使用)
    RocketMQ, Dashboard, 控制台安装,Java框架,Java,rocketmq,dashboard,rocketmq一键启动

驾驶舱

  • 查看broker的消息总量,左边的是最近5分钟的趋势图。

  • 查看单一主题的消息量(总量/趋势图)
    RocketMQ, Dashboard, 控制台安装,Java框架,Java,rocketmq,dashboard,rocketmq一键启动

集群

  • 查看集群的broker情况,分布情况,cluster与broker关系

  • 查看broker具体信息/运行信息

  • 查看broker配置信息
    RocketMQ, Dashboard, 控制台安装,Java框架,Java,rocketmq,dashboard,rocketmq一键启动

主题页面

  • 展示所有的主题,可以通过搜索框进行过滤

  • 筛选 普通/重试/死信 主题,重试为消息发送失败之后的重试主题。死信就是默认发送失败15次的消息。

  • 添加/更新主题

l clusterName 创建在哪几个cluster上

l brokerName 创建在哪几个broker上

l topicName 主题名

l writeQueueNums 写队列数量

l readQueueNums 读队列数量

l perm //2是写 4是读 6是读写

  • 状态 查询消息投递状态(投递到哪些broker/哪些queue/多少量等)

  • 路由 查看消息的路由(现在你发这个主题的消息会发往哪些broker,对应broker的queue信息)

  • CONSUMER管理(这个topic都被哪些group消费了,消费情况何如)

  • topic配置(查看变更当前的配置)

  • 发送消息(向这个主题发送一个测试消息)

  • 重置消费位点(分为在线和不在线两种情况,不过都需要检查重置是否成功)

  • 删除主题 (会删除掉所有broker以及namesrv上的主题配置和路由信息)
    RocketMQ, Dashboard, 控制台安装,Java框架,Java,rocketmq,dashboard,rocketmq一键启动

消费者页面

  • 展示所有的消费组,可以通过搜索框进行过滤

  • 刷新页面/每隔五秒定时刷新页面

  • 按照订阅组/数量/TPS/延迟 进行排序

  • 添加/更新消费组

l clusterName 创建在哪几个集群上

l brokerName 创建在哪几个broker上

l groupName 消费组名字

l consumeEnable //是否可以消费 FALSE的话将无法进行消费

l consumeBroadcastEnable //是否可以广播消费

l retryQueueNums //重试队列的大小

l brokerId //正常情况从哪消费

l whichBrokerWhenConsumeSlowly//出问题了从哪消费

  • 终端 在线的消费客户端查看,包括版本订阅信息和消费模式

  • 消费详情 对应消费组的消费明细查看,这个消费组订阅的所有Topic的消费情况,每个queue对应的消费client查看(包括Retry消息)

  • 配置 查看变更消费组的配置

  • 删除 在指定的broker上删除消费组
    RocketMQ, Dashboard, 控制台安装,Java框架,Java,rocketmq,dashboard,rocketmq一键启动

生产者页面

通过Topic和Group查询在线的消息生产者客户端

信息包含客户端主机 版本
RocketMQ, Dashboard, 控制台安装,Java框架,Java,rocketmq,dashboard,rocketmq一键启动

消息查询页面

  • 根据Topic和时间区间查询 *由于数据量大 最多只会展示2000条,多的会被忽略

  • 根据Topic和Key进行查询

最多只会展示64条

  • 根据消息主题和消息Id进行消息的查询

  • 消息详情可以展示这条消息的详细信息,查看消息对应到具体消费组的消费情况(如果异常,可以查看具体的异常信息)。可以向指定的消费组重发消息

RocketMQ, Dashboard, 控制台安装,Java框架,Java,rocketmq,dashboard,rocketmq一键启动

一键启动脚本

这个脚本主要用于一键启动RocketMQ的NameServer,Broker,Dashboard三个应用。
并且启动之前会自动识别要启动的应用是否已经启动,启动成功则自动启动下一个。文章来源地址https://www.toymoban.com/news/detail-619751.html

#!/bin/bash

#软件安装目录设置,先读环境变量,读不到则用默认值
ROCKETMQ_HOME=$ROCKETMQ_HOME
if [ -z $ROCKETMQ_HOME]; then
	echo "ROCKETMQ_HOME is not set! the program will use default value"
	ROCKETMQ_HOME=/www/wwwroot/install/rocketmq-all-4.9.7-bin-release
fi
echo "ROCKETMQ_HOME=$ROCKETMQ_HOME"


# 启动rocketmq nameserver
cd ${ROCKETMQ_HOME}/bin
# 检查Zookeeper是否启动成功
if jps -ml | grep "namesrv.NamesrvStartup"; then
	echo "rocketmq nameserver is running.";
else
	echo "rocketmq nameserver is Starting ...";
	rm -rf nohup.out;
	nohup sh mqnamesrv &
	count=0
	while [ $count -le 10 ]; do
	  if tail -100 nohup.out | grep "Name Server boot success"; then
		echo "rocketmq nameserver has been started successfully";
		break
	  else
		count=$((count+1))
		sleep 2
	  fi
	done
fi

# 启动rocketmq broker
# 检查Zookeeper是否启动成功
if jps -ml | grep "org.apache.rocketmq.broker.BrokerStartup"; then
	echo "rocketmq broker is running.";
else
	echo "rocketmq broker is Starting ...";
	rm -rf nohup.out;
	nohup sh mqbroker -c ../conf/broker.conf -n dev-study:9876 autoCreateTopicEnable=true &  
	count=0
	while [ $count -le 10 ]; do
	  if tail -100 nohup.out | grep "broker.*success"; then
		echo "rocketmq broker has been started successfully";
		break
	  else
		count=$((count+1))
		sleep 2
	  fi
	done
fi

# 启动rocketmq dashboard
cd ${ROCKETMQ_HOME}/dashboard
if jps -ml | grep "rocketmq-dashboard"; then
	echo "rocketmq dashboard is running.";
else
	echo "rocketmq dashboard is Starting ...";
	rm -rf nohup.out;
	nohup java -jar rocketmq-dashboard-1.0.0.jar & 
	count=0
	while [ $count -le 10 ]; do
	  if tail -100 nohup.out | grep "Tomcat started on port(s)"; then
		echo "rocketmq dashboard has been started successfully";
		break
	  else
		count=$((count+1))
		sleep 2
	  fi
	done
fi

echo "All services started.";

到了这里,关于RocketMQ, Dashboard, 控制台安装的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker安装sentinel控制台

    1、拉取镜像,直接使用run命令,如果说本地没有镜像就会直接去远程仓库拉取: --network是你自己建立的网桥,不加这一行也行,就是默认网桥bridge 按照我的命令你是执行不成功的,因为没有网桥,此时你需要先将你创建的这个docker 容器删掉 docker rm -f  sentinel-dashboard  把网

    2024年02月03日
    浏览(51)
  • Docker安装Elasticsearch和控制台

    安装 Elasticsearch 使用 Docker 非常简单。以下是详细步骤: 安装 Docker :如果你还没有安装 Docker,请从 Docker 官网 下载并安装适用于你操作系统的 Docker 版本。 拉取 Elasticsearch 镜像 :打开命令行界面(CLI),输入以下命令以从 Docker Hub 拉取最新的 Elasticsearch 镜像: 请确保将

    2024年02月04日
    浏览(43)
  • 【Java案例】基于控制台的购书系统

    案例介绍: (1)输出所有图书的信息:包括每本书的编号、书名、单价、库存。 (2)顾客购买书时,根据提示输入购买书的数量。 (3)购买完毕后输出顾客的订单信息,包括:订单号、订单明细、订单总额。  运行结果: //Book //OrderItem //Order //BuyBooks:outBooks()、buyBooks(

    2024年02月08日
    浏览(46)
  • C++制作安装包【1】—— 控制台实现

    之前用NSIS的时候发现不方便自制UI,找了其他的安装包开发框架,开发手感还是不好,功能残缺不一。我就想 如何使用纯代码的方式制作安装包 呢?经历了众多艰难才终于摸出方法。网上现有的文章都是用NSIS,Windows Installer等等现成框架制作安装包的。所以我另开一个专栏

    2024年02月04日
    浏览(47)
  • 区块链搭建联盟链及控制台安装

    执行成功后,我们将看到当前目录下生成了一个 nodes 目录。nodes 目录下存在两个目录,分别是 127.0.0.1 和 cert ,我们进入 127.0.0.1 目录 ,执行执行 bash start_all.sh , 看到输出 “start successfully” 表示节点启动成功。至此,一切顺利的话,我们的链就创建并启动成功了 检查是否

    2024年02月02日
    浏览(58)
  • Java程序设计入门教程--控制台输入数据

    控制台输入数据常用类 Scanner类        在 很多情况下,我们需要 Java 程序能够对我们指定的值进行计算,这样的话就需要我们的 Java 程序能够读取我们所输入的值。我们可以使用 Java 自带的 Scanner 类来从控制台获取 输入 。        Scanner 类在包 java.util 里。我们一般在程

    2024年02月07日
    浏览(44)
  • 手机信息管理系统【控制台+MySQL】(Java课设)

    控制台类型+Mysql数据库存储数据 适合作为Java课设!!! jdk1.8+Mysql8.0+Idea或eclipse+jdbc 本系统源码地址:https://download.csdn.net/download/qq_50954361/87737284 更多系统资源库地址:更多Java课设系统 更多系统运行效果展示:更多Java课设系统运行效果展示 部署教程地址:Java课设部署教程

    2024年02月02日
    浏览(40)
  • Java学习之Eclipse 控制台中文输出乱码解决

    Eclipse IDE for java Developers 2023-06 版本 缺省情况下,Eclipse将输出中文或非英文字符作为问号(?)或某些奇怪的字符。,它无法显示其他非英语单词。 那么想要在控制台显示中文,我们应该怎么办呢?  先找到run ----再找到里面的 Run Configurations    在跳出的页面的右边选择c

    2024年02月08日
    浏览(70)
  • (二十五)大数据实战——kafka集群及Kafka-Eagle控制台安装与部署

    本节内容我们主要介绍一下搭建kafka集群以及kafka集群的一个web客户端组件Kafka-Eagle的部署安装,使用的kafka版本是kafka_2.12-3.0.0。在搭建kafka集群之前,我们要预先搭建好zookeeper集群,这里作者默认zookeeper的集群环境已经搭建完成,可参考作者往期博客内容。新版本的kafka集群分

    2024年02月09日
    浏览(42)
  • SpringBoot整合Redis:java.io.IOException: 远程主机强迫关闭了一个现有的连接。或者控制台报连接超时异常

    场景: 项目启动过后 Redis 连接过一会就会断开,报如下问题: 问题1: 问题2: 问题3: 一、解决 1、设置连接空闲超过 N(秒或毫秒)后关闭,0为禁用:redis.timeout: 60s(这里设置和tcp-keepalive的值一致) 2、设置 redis 服务端的配置文件 redis.conf 中 tcp-keepalive 的时间为60(单位秒

    2024年02月13日
    浏览(41)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包