Timer 如何重置dropwizard指标的计时器?
我们正在处理定期收到的消息。我们使用codahale dropwizard metrics的“计时器”来测量处理它们所需的时间 我发现有人也有同样的问题: “指数衰减的水库的问题是,如果没有新数据进来,它会一直给出相同的数字。例如,假设你用5和7更新一个计时器(然后根本不放任何东西),那么不管你什么时候看到(甚至在x小时之后),计时器仍将显示平均值为6,这无论如何都不能代表过去5分钟的平均值。 因此,只有当数据始终到达时,它才会起作用。” 正如您可以看到的深蓝色线条: 但是没有解决这个问题的建议。他们说这不会被实施: 如何正确重置这些计时器,或者如何将其可视化以避免混淆Timer 如何重置dropwizard指标的计时器?,timer,dropwizard,metrics,codahale-metrics,Timer,Dropwizard,Metrics,Codahale Metrics,我们正在处理定期收到的消息。我们使用codahale dropwizard metrics的“计时器”来测量处理它们所需的时间 我发现有人也有同样的问题: “指数衰减的水库的问题是,如果没有新数据进来,它会一直给出相同的数字。例如,假设你用5和7更新一个计时器(然后根本不放任何东西),那么不管你什么时候看到(甚至在x小时之后),计时器仍将显示平均值为6,这无论如何都不能代表过去5分钟的平均值。 因此,只有当数据始终到达时,它才会起作用。” 正如您可以看到的深蓝色线条: 但是没有解决这个问题的建
Note: It is too long for comment.
使用SlidingTimeWindowRepositor
将涵盖大多数用例。
但正如中所指出的,根据事件的数量,可能存在问题:
它将窗口中的所有测量值保存在内存中,这在大量事件中变得不可接受
我们能做得更好吗?让我们继续搜索。如果幸运的话,我们会找到的。它准确地描述了你的问题类型。有一个链接指向他们简单的肮脏解决方案。也有使用的建议
另外,在屏幕上,有几条消息正是关于这个问题的。
用于并指向。什么是HdrHistogram
以及为什么使用它来测量延迟检查项目描述
最后,经过进一步的挖掘,你们还可以找到这个项目。它还使用了HdrHistogram
因此,有两个类似的库使用相同的数据结构,并声称可以解决您遇到的问题案例。您的答案比我的详细得多:)