Hazelcast 作为 Spring 引导的缓存

Hazelcast as cache with Spring Boot

我尝试将 Hazelcast 作为缓存(使用@Cacheable 和@CacheEvict)与 Spring 引导(在 Spring 引导 1.5 中使用 hazelcast-spring 工件。2.RELEASE ) 并且我的应用程序崩溃了,因为它 运行 内存不足。我有两个问题:

1) 默认行为似乎是填充所有缓存,直到没有更多内存,然后抛出异常。我对吗?我觉得缓存没有默认的 LRU 或 LFU 标准很奇怪。

2) 如何为我的应用程序中的所有地图配置 hazelcast.xml 最大大小、ttl 等? (类似于默认配置,然后针对特定地图扩展它)

谢谢。

@italktothewind

1 - 默认情况下,没有配置逐出,无论是基于时间还是基于大小。但是您可以配置其中任何一个或两者。请参阅 http://docs.hazelcast.org/docs/latest-development/manual/html/Distributed_Data_Structures/Map/Map_Eviction.html

2 - 如果您配置 default 地图并且每个地图没有特殊配置,那么所有地图将共享相同的配置。但是如果您决定添加地图特定配置,那么您需要添加所有必要的配置选项,因为它不会从 default 地图配置继承其他未配置的参数。