0

EHCache 3.2 版

如何评估“ehcache:resources”?

文件:ehcache.xml

<ehcache:cache alias="messageCache">
    <ehcache:key-type>java.lang.String</ehcache:key-type>
    <ehcache:value-type>org.cache.messageCacheBean</ehcache:value-type>
    <ehcache:resources>
        <ehcache:heap unit="entries">10</ehcache:heap>
        <ehcache:offheap unit="MB">1</ehcache:offheap>
    </ehcache:resources>
</ehcache:cache>

认为。

表名:消息有 4 列类型 varchar2(100 字节),并且在数据库中有 1000 行或更多的数据。

多少提供足够的定义堆/堆外值?

谢谢你。

4

1 回答 1

1

调整缓存大小是练习的一部分,并没有真正的通用答案。

但是,需要了解一下 Ehcache 的工作原理。在您的配置上下文中:

  • 所有映射将始终存在于堆外。因此,该层的大小应该足够大,以平衡与您的应用程序需求相匹配的内存使用/延迟优势。
  • onheap 层将用于热集,从而更好地减少延迟。但是,如果太小,它将驱逐所有时间,使其好处不那么有趣,但如果太大,它也会过多地影响 Java 垃圾收集。

帮助 onheap 层大小调整的一件事是在一个测试中移动到字节大小。虽然它会对性能产生影响,但它可以让您评估映射占用的内存量。从而得出有多少映射适合您准备备用的内存。

于 2017-03-10T12:40:11.407 回答