3
我使用hazelcast存储对于一个小时间窗口(可能30至50分钟,但不超过60分钟)很重要的数据。条目越老,它就越不重要,这意味着如果我们可以摆脱一些条目来避免OutOfMemory是较旧的条目。Hazelcast - 最早的条目首先被驱逐
我将这些条目的TTL配置为60分钟,但当内存不足时,我想可靠地摆脱最早的条目,即使它们没有过期。
我检查了配置EvictionPolicy.LRU
,但配置它我可以看到一些最近添加到地图的条目被逐出。我想这是由于采样算法用于选择驱逐条目,如解释here。
是否有包含此用例的分布式对象的任何实现?
嘿,那很棒,会检查出来!预计在某些情况下,'LRU'实现会删除最后添加的条目吗?我可以通过添加一个条目侦听器来看到这样的行为,只是在添加或删除条目时打印某些条目,在某些情况下,我可以看到最近添加的条目驱逐并保持条目不超过几小时(使用'hz 3.6。 4')。 –
在3.7版本中,最后添加的条目的驱逐应该不再是问题。请参阅:https://github.com/hazelcast/hazelcast/issues/4334 – mrck