[英]Hazelcast 3.4 'max-size' attribute of hazelcast IMap is not working correctly
我正在使用hazelcast-spring-3.1.xsd
。 我的淡褐色地图配置如下。
<hz:map name="defaultMap"
backup-count="1"
max-size="5000"
max-size-policy = "PER_NODE"
eviction-percentage="50"
read-backup-data="true"
eviction-policy="LRU"
merge-policy=
"com.hazelcast.map.merge.LatestUpdateMapMergePolicy"
time-to-live-seconds="0"
>
我给了max-size = 5000
。 我有12000 条记录,如果我插入, defaultMap正在加载12000 条记录。 我在这里很困惑,它如何加载比实际大小5000多的数据。 我在插入 12000 条数据记录时也不例外。
还有一件事,它的驱逐配置也不起作用。 如果缓存达到最大大小限制,我想将其驱逐 50%。
有谁能够帮助我? 它非常紧急。我错过了什么?
您有max-size-policy = "PER_NODE"
设置,这意味着每个 Hazelcast 实例中的最大地图条目数,而不是整个 Hazelcast 集群(或整个地图)。
在 Hazelcast 2.x 版本中,最大大小驱逐策略的默认值是cluster_wide_map_size
。 在 3.x 版本中,它被替换为PER_NODE
。
还有其他设置。 有关详细的地图驱逐设置和示例,您可以查看此内容。
LFU:最不常用 LRU:最近最少使用 NONE:无 RANDOM:随机 我认为您会使用 LRU 而不是 LFU ..
您可以使用此属性来解决您的问题:
eviction-policy="LFU"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.