我们可以在Hazelcast中为所有组合的地图配置内存限制吗?

时间:2019-01-24 11:38:19

标签: hazelcast

我想知道是否可以在Hazelcast中为组合的所有地图配置内存限制。在实例级别说。 由于我的hazelcast节点是嵌入在应用程序的JVM内运行的,因此我想设置此限制

2 个答案:

答案 0 :(得分:0)

达到内存限制后,该如何工作?哪个地图将逐出条目?

由于您开始使用定义堆大小的榛树广播,因此可以在所有地图上使用基于堆使用的逐出。或者,仅当您要使用单个逐出配置时,才可以使用单个地图。

答案 1 :(得分:0)

@Haresh,您可以按照以下说明为USED_HEAP_PERCENTAGEFREE_HEAP_PERCENTAGE定义驱逐策略:https://docs.hazelcast.org/docs/latest/manual/html-single/index.html#configuring-map-eviction

您还需要为所有地图配置和default地图配置定义此逐出配置。这将帮助您限制堆的使用,但会导致其他意外行为,如@sertug所述。

假设您有2张地图:ab。您填满了a,并且在JVM中只有足够的空间可以再添加1个条目。当您开始将数据推送到b时,它只会存储最后一个记录并逐出上一个记录,因为地图只能从自己的记录而不是从其他地图上逐出记录。