1.3. キャッシュマネージャーの設定 Bean
次の設定 Bean を使用して Cache Manager をカスタマイズできます。
-
InfinispanGlobalConfigurer
-
InfinispanCacheConfigurer
-
Configuration
-
InfinispanConfigurationCustomizer
-
InfinispanGlobalConfigurationCustomizer
注記
InfinispanGlobalConfigurer
Bean は 1 つしか作成できません。ただし、他の 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(); }
カスタマイザー Bean
@Bean public InfinispanGlobalConfigurationCustomizer globalCustomizer() { return builder -> builder.transport().clusterName(CLUSTER_NAME); } @Bean public InfinispanConfigurationCustomizer configurationCustomizer() { return builder -> builder.memory().evictionType(EvictionType.COUNT); }