开发者社区 > 云原生 > 云消息队列 > 正文

RocketMQ老的采集指标要怎么计算?

RocketMQ老的采集指标要怎么计算:
rocketmq_broker_tps Broker级别的生产TPS
rocketmq_broker_qps Broker级别的消费TPS

展开
收起
嘟嘟嘟嘟嘟嘟 2023-11-20 22:24:37 91 0
2 条回答
写回答
取消 提交回答
  • 面对过去,不要迷离;面对未来,不必彷徨;活在今天,你只要把自己完全展示给别人看。

    对于 RocketMQ 来说,Broker 是一个重要的组件,负责维护主题的消息队列并提供消息存储与分发服务。其中 rocketmq_broker_tpsrocketmq_broker_qps 分别代表 Broker 级别的生产和消费吞吐量指标。
    针对这两个指标,您可以采用如下的方式来进行计算:

    1. 生产 TPS ( rocketmq_broker_tps
      在 RocketMQ 的生产者客户端中,通常都会有一个名为 sendMsgSuccessCount 的指标,它可以反映出一段时间内成功发送到 Broker 的消息数量。通过监控该指标的变化趋势,并将其转化为每秒发送的消息数量,即可得出生产 TPS 值。
      对于这种方式,您可以在监控系统(如 Prometheus)中编写如下表达式来进行计算:
       sum(rate(rocketmq_producer_sendmsgsuccess_total[5m])) / 5 * 60
      
      其中, rate() 函数可以计算出给定时间内某指标的瞬时变化率;同时乘以时间窗口长度(这里是 5 分钟),将变化率转换为每秒的变化量;然后再乘以 60 秒,就可以得到每分钟的生产 TPS 值了。
    2. 消费 TPS ( rocketmq_broker_qps
      在 RocketMQ 的消费者客户端中,也有一个名为 pullMessageConsumeRT 的指标,它可以反映出一段时间内消费者拉取消息并完成消费的时间间隔。通过监测该指标的平均值,并将其转化为每秒消费的消息数量,即可得出消费 TPS 值。
      对于这种方式,您也可以在监控系统中编写如下表达式来进行计算:
       avg_over_time(rocketmq_consumer_pullmessagert[5m]) / 5 * 60
      
      其中, avg_over_time() 函数可以计算出给定时间段内某指标的平均值;然后同样乘以时间窗口长度(这里是 5 分钟),将平均值转换为每秒的变化量;再乘以 60 秒,就可以得到每分钟的消费 TPS 值了。
      需要注意的是,这里的 TPS 值仅表示 Broker 层面的消息传输能力,而并非整个系统的实际性能水平。因此在实际分析过程中,还需要结合其他指标和因素综合判断系统的运行状态和健康状况。
    2023-11-21 17:28:42
    赞同 1 展开评论 打赏
  • RocketMQ提供了一些内置的监控指标,包括Broker级别的生产TPS(Transaction Per Second)和消费TPS(Transaction Per Second)。这些指标可以通过RocketMQ的管理界面查看,也可以通过RocketMQ提供的JMX接口获取。

    以下是计算这两个指标的方法:

    1. rocketmq_broker_tps:这是指Broker每分钟处理的交易数量。这个指标可以通过RocketMQ的JMX接口获取,具体的MBean路径是ROCKETMQ_HOME/bin/mqwebconsole/target/mqwebconsole/WEB-INF/classes/com/alibaba/rocketmq/common/StatsUtil.java。在这个文件中,你可以找到计算TPS的代码。

    2. rocketmq_broker_qps:这是指Broker每分钟处理的消息数量。这个指标也可以通过RocketMQ的JMX接口获取,具体的MBean路径是ROCKETMQ_HOME/bin/mqwebconsole/target/mqwebconsole/WEB-INF/classes/com/alibaba/rocketmq/store/DefaultMessageStore.java。在这个文件中,你可以找到计算QPS的代码。

    注意,这两个指标都是基于RocketMQ内部统计的数据计算的,可能会有一定的误差。如果你需要对这两个指标进行精确的计算,你可能需要自己实现相关的算法。

    2023-11-21 16:30:42
    赞同 展开评论 打赏

涵盖 RocketMQ、Kafka、RabbitMQ、MQTT、轻量消息队列(原MNS) 的消息队列产品体系,全系产品 Serverless 化。RocketMQ 一站式学习:https://rocketmq.io/

相关产品

  • 云消息队列 MQ
  • 热门讨论

    热门文章

    相关电子书

    更多
    RocketMQ Client-GO 介绍 立即下载
    RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载
    基于 RocketMQ Prometheus Exporter 打造定制化 DevOps 平台 立即下载