2.2. 缓存管理器配置 Beans
您可以使用以下配置 Bean 自定义缓存管理器:
-
InfinispanGlobalConfigurer -
InfinispanCacheConfigurer -
配置 -
InfinispanConfigurationCustomizer -
InfinispanGlobalConfigurationCustomizer
注意
您只能创建一个 InfinispanGlobalConfigurer bean。但是,您可以使用其他 Bean 创建多个配置。
InfinispanCacheConfigurer Bean
@Bean
public InfinispanCacheConfigurer cacheConfigurer() {
return manager -> {
final Configuration ispnConfig = new ConfigurationBuilder()
.clustering()
.cacheMode(CacheMode.LOCAL)
.build();
manager.defineConfiguration("local-sync-config", ispnConfig);
};
}
配置 Bean
将 bean 名称链接到它配置的缓存,如下所示:
@Bean(name = "small-cache")
public org.infinispan.configuration.cache.Configuration smallCache() {
return new ConfigurationBuilder()
.read(baseCache)
.memory().size(1000L)
.memory().evictionType(EvictionType.COUNT)
.build();
}
@Bean(name = "large-cache")
public org.infinispan.configuration.cache.Configuration largeCache() {
return new ConfigurationBuilder()
.read(baseCache)
.memory().size(2000L)
.build();
}
Customizer Beans
@Bean
public InfinispanGlobalConfigurationCustomizer globalCustomizer() {
return builder -> builder.transport().clusterName(CLUSTER_NAME);
}
@Bean
public InfinispanConfigurationCustomizer configurationCustomizer() {
return builder -> builder.memory().evictionType(EvictionType.COUNT);
}