Java 可以在Spring中配置基于ConcurrentMap的缓存吗?

Java 可以在Spring中配置基于ConcurrentMap的缓存吗?,java,spring,spring-boot,caching,Java,Spring,Spring Boot,Caching,Spring缓存的默认实现是ConcurrentMap。 使用默认缓存类型,是否可以配置最大大小以避免内存中断? Spring中基于ConcurrentMap的缓存是否有其他类型的配置?Spring中的默认缓存类型仅适用于测试,不适用于生产。我认为您选择不寻找像Redis这样更合适的缓存是因为对于您的用例,本地缓存是可以的。如果是这样的话,我可以建议您尝试咖啡因,它支持许多参数,并且使用SpringBoot,配置非常简单。下面的代码取自官方的spring引导配置 spring.cache.cac

Spring缓存的默认实现是ConcurrentMap。 使用默认缓存类型,是否可以配置最大大小以避免内存中断?
Spring中基于ConcurrentMap的缓存是否有其他类型的配置?

Spring中的默认缓存类型仅适用于测试,不适用于生产。我认为您选择不寻找像Redis这样更合适的缓存是因为对于您的用例,本地缓存是可以的。如果是这样的话,我可以建议您尝试咖啡因,它支持许多参数,并且使用SpringBoot,配置非常简单。下面的代码取自官方的spring引导配置

spring.cache.cache-names=cache1,cache2
spring.cache.caffeine.spec=maximumSize=500,expireAfterAccess=600s

我希望这可以帮助您

如果我是您,出于内存原因,我将重新考虑使用ConcurrentMap作为缓存解决方案。Redis对于这种用途是一个非常好的选择。您可以使用
ConcurrentMap
创建
Cache
实例。我想不可能轻松配置默认缓存。事实上,我正在寻找一个本地缓存,这就是我放弃Redis的原因。这可能是一个有效的解决方案!谢谢