了解 jvisualVM 中的 Java 度量库单元
Posted
技术标签:
【中文标题】了解 jvisualVM 中的 Java 度量库单元【英文标题】:understand java metric library units in jvisualVM 【发布时间】:2015-08-30 02:17:09 【问题描述】:基本上我是想了解度量java库的OneMinuteRate
、RateUnit
所以我已经使用 jmeter 向服务器 login
方法发送了 51 个请求,现在我正在尝试理解数据。
1COUNT
给出了该方法被调用的总次数。
但是 oneMinRate
和 rateUnit
是什么?
什么是这里的事件?
编辑 也请您对其他属性也有所了解
【问题讨论】:
【参考方案1】:指标库对此有一些非常好的文档。从您的输出来看,您似乎在代码中使用了Timer
。 From the docs,您可以看到 Timer “基本上是一种事件持续时间的直方图和事件发生率的计量表”。请注意,这些文档提供了 Meter 和 histogram 的链接。
从这些文档中我们看到,“仪表以几种不同的方式测量事件的发生率。平均发生率是事件的平均发生率。它通常对琐事有用,但因为它代表了应用程序的总发生率整个生命周期(例如,处理的请求总数,除以进程运行的秒数),它不提供新近感。幸运的是,仪表还记录了三种不同的指数加权移动平均速率: 1 分钟、5 分钟和 15 分钟移动平均线。”
而且,“直方图指标不仅可以让您测量值的最小值、平均值、最大值和标准差等简单的东西,还可以测量中位数或第 95 个百分位数等分位数。”
因此,将所有内容放在一起并查看您粘贴的内容,我们知道:
您的登录代码总共被点击了 78 次 在最后一分钟、5 分钟和 15 分钟内,代码被命中 0 次/秒(由于 RateUnit,我们知道它是事件/秒) 计时器启动和停止之间的中位时间(您必须查看代码以查看计时器停止的位置以了解实际测量的内容)为 0.286543 毫秒(我们知道单位是毫秒,因为 DurationUnit ) 第 99 个百分位时间(例如,所有调用的 99% 所用时间少于此时间)为 10.449777 毫秒 等上面唯一棘手且定义不太明确的是关于费率的第 2 条。如文档中所述,这些是exponentially weighted moving averages,因此例如 1 分钟费率包括有关 1 分钟多前的费率的一些信息。对于 1 分钟速率,已设置平均值的权重,因此最重要的是过去一分钟的数据。这不是很清楚,文档也没有澄清。在大多数情况下,您可以将这些视为最后 1 分钟、5 分钟和 15 分钟的速率,以事件/秒为单位。但是如果你真的需要知道确切的定义,你可以找到正在使用的权重in the source code。
【讨论】:
以上是关于了解 jvisualVM 中的 Java 度量库单元的主要内容,如果未能解决你的问题,请参考以下文章