Java 为什么度量实现需要性能度量库?

Java 为什么度量实现需要性能度量库?,java,performance,metrics,performancecounter,codahale-metrics,Java,Performance,Metrics,Performancecounter,Codahale Metrics,我有这种原始的怀疑。Java有很多度量库,比如这些度量库与拥有原始数据类型和自己进行度量有什么不同?例如,这提供了一个称为计数器的功能,可用于测量计数。但这与使用局部整数变量并自行递增或递减有什么区别?这不仅与该库相关,而且与所有性能度量库相关。另一个特点是健康检查。它与出于相同目的而使用简单的布尔变量有何不同?请给出建议。仅为了获得请求计数,您不需要度量库 IMHO真正的好处在于增强的功能,例如提供: 仪表测量一段时间内事件的速率(例如,“每秒请求数”)。除了平均速率外,仪表还跟踪1分钟、5分

我有这种原始的怀疑。Java有很多度量库,比如这些度量库与拥有原始数据类型和自己进行度量有什么不同?例如,这提供了一个称为计数器的功能,可用于测量计数。但这与使用局部整数变量并自行递增或递减有什么区别?这不仅与该库相关,而且与所有性能度量库相关。另一个特点是健康检查。它与出于相同目的而使用简单的布尔变量有何不同?请给出建议。

仅为了获得请求计数,您不需要度量库

IMHO真正的好处在于增强的功能,例如提供:

仪表测量一段时间内事件的速率(例如,“每秒请求数”)。除了平均速率外,仪表还跟踪1分钟、5分钟和15分钟的移动平均值

再加上报告工具,如,可能需要相当长的时间才能正确实施

所以基本上你可以自己做所有这些事情,但是如果现有的库可以满足你的所有需求,为什么还要麻烦自己去实现呢

而且,由于它是开源的,您可以随时将其扩展到库本身不支持的度量