【问题标题】:How to get size of data in Infinispan cache, alternate for calculateInMemorySize of ehcache?如何获取 Infinispan 缓存中的数据大小,替代 ehcache 的 calculateInMemorySize?
【发布时间】:2013-06-11 02:46:23
【问题描述】:

我正在从 ehcache 迁移到 infinispan。 在ehcache中我们有

net.sf.ehcache.Cache.calculateInMemorySize() 

计算内存大小。

infinispan中如何计算内存大小?

【问题讨论】:

  • 不幸的是,这在 Infinispan 中不会那么容易。为了有效地计算内存大小,您需要将缓存中的每个对象序列化为一个字节数组(存储为二进制配置),并且可能为每个条目的键和值计算字节大小。例如使用 ByteArrayOutputStream。有可能为此创建 DistributedExecution 任务,它获取所有缓存条目并在它们之上执行一些操作(这里,计算其键和值大小)

标签: java ehcache infinispan


【解决方案1】:

Tomas 是对的,目前没有办法计算内存中数据的大小。但是,我们确实为用户提供了一些关于 the memory overhead that Infinispan incurs 的指南,帮助用户规划他们的内存需求。计算内存中数据的大小并非易事,需要考虑很多细微的细节(JVM 类型、架构等)。

【讨论】:

    猜你喜欢
    • 2014-09-29
    • 2015-05-14
    • 1970-01-01
    • 1970-01-01
    • 2020-08-21
    • 1970-01-01
    • 1970-01-01
    • 2015-08-23
    • 1970-01-01
    相关资源
    最近更新 更多