zoukankan      html  css  js  c++  java
  • RocketMQ系列:rocketmq运维控制台使用详解(全网独家)

    搭建好了RocketMQ的console之后,直接在浏览器打开http://{你的ip}:8080

    默认会进入到驾驶舱(dashboard)。

    总览

    整体横向菜单分为个部分:

    运维:主要是设置nameserver和配置vipchannel

    驾驶舱:控制台的dashboard,可以分别按broker和主题来查看消息的数量和趋势。

    集群:整个RocketMq的集群情况,包括分片,编号,地址,版本,消息生产和消息消费的TPS等,这个在做性能测试的时候可以作为数据指标。

    主题:即topic,可以新增/更新topic;也看查看topic的信息,如状态,路由,消费者管理和发送消息等。

    消费者:可以在当前broker中查看/新建消费者group,包括消费者信息和消费进度

    生产者:可以在当前broker中查看生产组下的生产者group,包生产者信息和生产者状态

    消息:可以按照topc,messageID,messageKey分别查询具体的消息

    用户中心:切换语言和登陆相关(登陆需要在console的配置中打开对应配置,默认不需要登陆)

    其中最常用的是集群主题消费者消息这四部分。 

    下面分别来看各个部分。

    运维

     刚才讲到,运维这块儿就两个功能

    • 设置Nameserver
    • 打开/关闭vipchannnel

    设置nameserver:可以添加多个nameserver地址到输入框内,默认读取的是console启动配置里面的nameserver配置。如果rockermq集群里有加入新的nameserver节点,可以在这里动态配置后更新生效。

    打开/关闭vipchannel: 这里默认为false就好,vipchannnel针对的是topic的优先级,相当于在消息处理的时候,有些topic可以走vipchannel,可以优先被处理,这个除了电商场景用的一般不多。

    驾驶舱(Dashboard)

    驾驶舱消息当前数量和最近的趋势,如图左侧为当前消息总数量,右侧为消息数量趋势。

    我们分别解释如下四张图。

    1)按broker实例为类目(比如说集群中有3个broker实例)展示当前的消息数

    2)按topic为类目(比如说当前所有broker中存在10个topic)展示当前的消息数

    3)指定某天和时间段,查询不同broker实例的消息数的趋势

    4)指定某天和时间段,查询某topic下消息数的趋势

    集群

    集群主要展示了集群当前broker的状态,如下是各个字段含义:

    分片:指的是数据分片(或者broker),当前rocketmq集群的只有一个数据分片,id为RaftNode00,即所有数据都在这个分片上;rocketmq的消息数据可以分布在多个数据分片上(一般都是多broker集群),后面搭建集群化环境的时候会讲到。

    编号:标识了哪些是master(0是master),哪些是slave,master负责直接读写;slave相当于master的副本,定期从master同步数据,如果master挂掉,slave会自动内部选举一个master节点。

    地址:即broker的实际ip端口。

    版本:rocketmq的版本,这里是最新的4.7.1。

    生产消息TPS:即broker中处理消息的TPS(每秒落盘的消息数)。

    消费消息TPS:即consumer从broker中收取消息的TPS(每秒接收的消息数) 。

    昨日生产总数:昨天落盘的总消息数。

    昨日消费总数:昨天消费的总消息数。

    今天生产总数:今天落盘的总消息数。

    今天消费总数:今天消费的总消息数。

    操作:

    状态:当前broker中的消息处理和消费的一些属性值

    配置:即启动broker时候broker.conf相关的配置项

    主题

    主题里面有三大类型

    普通主题:这里是rocketmq自动创建的一些系统topic,然后用户创建的topic也展示在这里。

    重试主题:这里是发送失败时候系统为之创建的topic。

    死信主题:这里的topic类似垃圾箱,无法从中生产或者消费消息。

    这里以BenchmarkTest为例介绍相关的操作(BenchmarkTest是rocketmq自带压测工具默认指定的topic):

    状态

    记录了topic中每个队列的起始位置(minOffset)和结束位置(maxOffset),通过累加所有队列的(maxOffset-minOffset)的差值,可以算出消息的总落盘数。

    路由

    最上面的broker:RaftNode00指的是分片,brokerAddrs指的是分片里的几个broker的地址信息,即该topic存在于这几个broker中。

    下面比较有用的是perm,通过修改perm可以使当前broker分别置为只读,只写,和读写状态。当用于运维的时候可以将broker置为只读状态。

    下面的队列信息是该topic的属性值。

    Consumer管理

     这里指的是Topic当前的Consumer的连接信息,没有消费者(consumer)则不显示订阅组。

    TOPIC设置

    设置topic的相关属性,一般读队列和写队列设置到16或者32就可以了。

    发送消息

     这里指的是给topic发送生产消息,消息包含msgid(系统自带),tag,key,body,其中tag和key可以用于后面筛选和查找消息。

    重置消费点位

    这里指的是从头开始消费消息,比如broker某topic有3w条消息,现在消费了2w条,还剩余1w条没有消费,下一条应该是从20001条开始消费;如果点击这个重置消费点位,下一条就会重新从第一条开始消费。

    删除

    删除本topic(貌似关联关系还在)

    新增/更新topic

    同topic设置类似

    消费者

    这里订阅组指的是使用rocketmq的客户端(比如java,cpp,go,python等)进行消费时候使用的group,多个consumer可以使用同一个group进行消费,也可以使用不同的group消费。

    默认展示订阅组的名称,对应consumer的数量(多个consumer使用一个group),版本信息,类型,默认,TPS,延时

    其中TPS可以看出当前消费组的整体的消费TPS,在测试消费性能的时候很有用。

    延迟反映的是消息消费时候的broker的响应快慢,数字越大说明越慢。

    终端

    里面描述了consumer的详细信息,ClientAddr指明了客户端的地址,Language说明使用的是GO语言,版本为4.5.2

    在consumer进行消费的时候,默认会创建一个RETRY的topic,在消费失败的时候会进行重试。

    后面的ConsumeFromWhere指的是从头消费还是从最新的offset进行消费。

    ConsumeType:分为被动(push)和主动(pull)模式,这里是主动模式

    Message:集群和广播,这里是集群模式

    ConmumeFromWhere:从哪里开始消费,分为:从头,从末尾(最新),指定位置这三个。

    消费详情

    消费详情和topic详情有点类似,不同的是topic详情展示的落盘消息的offset情况,而消费详情展示的是消费消息的offset情况。

    配置

    这里可以配置消费组的相关属性,一般不用配置。

    删除

    删除订阅组

    新建订阅组

    一般不用新建,在consumer消费的时候指定group,broker中会自动创建

    生产组

    如图,我用rocketmq自带的Producer压测工具进行压测,可以看到客户端的ip,并且其语言为java,版本为4.7.1。

    消息

    按topic查询

    选定topic,指定开始时间和结束时间即可查询。

    按MessageId查询

    选定topic,输入对应的messageID进行查询。

    按Key查询

    选定topic,输入对应的message key进行查询。

    博主:测试生财(一个不为996而996的测开码农)

    座右铭:专注测试开发与自动化运维,努力读书思考写作,为内卷的人生奠定财务自由。

    内容范畴:技术提升,职场杂谈,事业发展,阅读写作,投资理财,健康人生。

    csdn:https://blog.csdn.net/ccgshigao

    博客园:https://www.cnblogs.com/qa-freeroad/

    51cto:https://blog.51cto.com/14900374

    微信公众号:测试生财(定期分享独家内容和资源)

  • 相关阅读:
    mssqlserver字符串日期互相转换
    使用TripleDES算法加密/解密
    记录google,yahoo,bing爬虫记录的插件
    C#中编写sqlserver中自定义函数,实现复杂报表
    最基本的Socket编程 C#版
    基于.net平台的web框架搭建
    未来五年程序员需要掌握的10项技能
    一段输入框控制代码,包含所有控制条件!
    C#多线程编程实例编程
    C# WinForm开发系列 Socket/WCF/Rometing/Web Services
  • 原文地址:https://www.cnblogs.com/qa-freeroad/p/13690509.html
Copyright © 2011-2022 走看看