当前位置: 首页 > 知识库问答 >
问题:

为什么要在Dropwizard指标中使用CachedGauage?

奚高扬
2023-03-14

我在DropWizard Metrics(以前的Coda Hale Metrics)库中看到了<code>CachedGauge</code>。我想知道为什么有人会用这个?!?

我对度量值的理解是,它是实时、准确和相关的。如果一个度量报告了一个过时/缓存的值,它可能有什么用途?

共有2个答案

洪胜涝
2023-03-14

只是使用CachedGauge时的警告。在指定缓存该值的时间时,您需要考虑计算时间。这是因为缓存到期期在计算完成前开始计数,而不是计算值后的缓存期限。

例如,在链接的例子中,我们缓存一个值10分钟,如果< code>loadValue()需要5m,我们只缓存10m - 5m = 5分钟。

吴和硕
2023-03-14

引用您添加的相同链接:

缓存量表允许更高效地报告计算成本较高的值

如果您的指标需要大约两秒钟甚至几分钟来计算,该怎么办?每次用户请求数据时,您都会计算吗?存储在缓存中是有意义的。

这样的指标不是我所说的实时,因为更新本身比为用户呈现信息需要更多的时间。该指标在完成计算时已经过时。

 类似资料:
  • 我们使用Jersey和web创建了多个APIendpoint。xml设置而不是资源配置设置。我们希望捕获并显示每个endpoint的所有请求的度量,包括所有不同的响应代码。到目前为止,我已经创建了一个类,它扩展了InstrumentedFilterContextListener,并在其中包含了Graphite reporter。 在web.xml中,我添加了以下块来使报告工作: 因此,通过上述配置

  • 问题内容: 我正在检查一些功能,并在网站上浏览了一些看起来很有趣的代码: 作为匿名函数的例子之一。 有人知道吗?有文件吗?而且看起来很邪恶,应该使用它吗? 问题答案: 这就是PHP表示闭包的方式。这根本不是邪恶的,实际上它是强大而有用的。 基本上,这意味着您要允许匿名函数在其作用域之外“捕获”局部变量(在这种情况下为),并将其值(或在引用其自身的情况下)保留为内部状态匿名函数本身。

  • 本文向大家介绍为什么要在R中使用set.seed?,包括了为什么要在R中使用set.seed?的使用技巧和注意事项,需要的朋友参考一下 set.seed的使用是为了确保我们获得相同的随机结果。如果我们为R或任何统计软件中的任何任务随机选择一些观测值,则它始终会产生不同的值,这是由于随机化而发生的。如果我们想保留在第一次随机选择时产生的值,则可以通过在随机化之后将它们存储在一个对象中来实现,或者可以

  • 问题内容: 因此,当我向兄弟展示Chrome的DOM浏览器时,我不禁注意到Google使用了标签。 我知道这是一个愚蠢的问题,但是从编程的角度来看,为什么他们会在 Google 上使用不推荐使用的标签 ? 是因为它比使用然后为它创建样式要小,或者只是去了? 问题答案: 在Google主页上保存几个字节可能会节省数TB的传输带宽。

  • 问题内容: 在下面的代码中,我展示了我认为在golang中嵌入(提升方法的地方)和组合(提升方法的地方)之间的区别。 为什么要在golang中使用组合? 问题答案: 值得阅读有关“嵌入到有效Go中”的部分。 一个常见的示例是具有Mutex的结构/映射。 打字容易得多 而不是必须编写适当的包装器函数(重复的)或遇到困难 当你将永远做互斥领域的唯一事情就是访问方法(和在这种情况下) 当您尝试在嵌入式字

  • 问题内容: 我只是从Angular开始。阅读Google文档中的服务示例,我只是想知道为什么您会选择使用服务而不是将变量和函数正确地保留在控制器中? 在这种情况下,您何时选择使用服务? 问题答案: 我认为主要原因是: 在控制器之间持久并共享数据。 IE:您创建了一个从数据库中获取数据的服务,如果将其存储在控制器中,一旦更改为另一个控制器,数据将被丢弃(除非您将其存储在$ rootScope中,但这