我们正在使用咖啡因替换ConcurrentHashMap缓存,这是当前springboot中的默认设置。我们正在使用@Cacheable(cacheNames = { "..." })
批注动态创建缓存。
由于我们正在使用springboot执行器软件包来监视应用程序的各个方面,因此我试图设置recordStats
属性。
我试图在spring.cache.caffeine.spec=expireAfteraccess=3600s,recordStats
中设置application.properties
,但这不起作用。
在@Configure
类中进行设置也不起作用:
@Configuration
public class CacheConfig {
@Bean
public CacheManager cacheManager() {
caffeineCacheManager cacheManager = new caffeineCacheManager();
cacheManager.setCacheSpecification("expireAfteraccess=3600s,recordStats");
return cacheManager;
}
}
缓存统计信息未出现在/actuator/cache/{caches}
端点或我们的springboot-admin服务器中。
从当前的api文档中,我发现:
字符串语法是一系列逗号分隔的键或键/值对,每个键或键/值对都对应于caffeine builder方法。
initialCapacity=[integer]: sets caffeine.initialCapacity.
...
recordStats: sets caffeine.recordStats().
持续时间用整数表示,后跟“ d”,“ h”,“ m”或“ s”之一,分别表示天,小时,分钟或秒。当前没有语法要求以毫秒,微秒或纳秒为单位。
逗号和等号前后的空格将被忽略。键不能重复;在单个值中使用以下密钥对也是非法的:
maximumSize and maximumWeight weakValues and softvalues
及相关要点:
有没有可能完成我的任务?
谢谢