gpt4 book ai didi

java - 动态切换咖啡因缓存上的记录统计数据

转载 作者:行者123 更新时间:2023-12-02 09:08:56 25 4
gpt4 key购买 nike

我希望能够通过 REST 端点或 JMX 方法按需动态切换咖啡因缓存统计信息的记录

我们有一个大型应用程序,其中使用多个咖啡因缓存实例。我们可以使用所有可能的性能升级,因此持续录制似乎是多余的。特别是如果 JavaDoc 说录制会降低性能。经过我的分析,我认为这是不直接支持的。 或者是吗?

我有两个统计目标,第一个目标是能够调整我们的缓存策略。确定哪些地方命中率很差,或者哪些地方实际上不需要缓存。为了适应这种情况,我们可能会在打开录音的情况下进行临时发布,然后进行最终发布。这意味着这个解决方案根本不是动态的。

第二个目标是使用它来识别系统故障的原因。诊断实时生产环境中的错误状态。为了满足我所有的理想要求,这必须是动态的。如果我无法更改缓存实例,我想我可以更换该实例。这会给系统带来巨大的临时负载,因为它基本上会清除所有缓存。

为了避免清除,我们也许可以以某种方式将值便宜地传递给新实例,并切换统计记录。我还不知道如何实现,甚至不知道是否可能。

所以我的问题是实现我的目标的最佳方式是什么?

最佳答案

您是对的,不支持动态配置统计信息。不过,您可以提供自己的 StatsCounter 来提供此支持。

由于存储到 LongAdder 计数器中,使用内置 StatsCounter 的成本应该很便宜。在不干净的环境中,我观察到读取吞吐量下降了 20%,但仍超过 100M ops/s。在该吞吐量下,缓存不应成为给定实际应用程序逻辑的瓶颈。

您很可能可以放心地打开统计信息。如果您担心,请先尝试进行基准测试,看看额外的解决方法是否值得付出努力。如果是这样,自定义 StatsCounter 可能是可以接受的(但同样是基准测试)。

关于java - 动态切换咖啡因缓存上的记录统计数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59566399/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com