Невозможно получить доступ к экземпляру собственного кеша hazelCast при весенней загрузке - PullRequest
0 голосов
/ 18 июня 2020
@Bean
public Config inMemoryHazelCastCache() {

return new Config().setInstanceName(configuration.getCacheInstanceName())
        .addMapConfig(new MapConfig().setName(configuration.getCacheName())
                .setMaxSizeConfig(new MaxSizeConfig(configuration.getJvmCacheMaxSize(), MaxSizeConfig.MaxSizePolicy.FREE_HEAP_SIZE))
                .setEvictionPolicy(EvictionPolicy.LRU).setTimeToLiveSeconds(configuration.getJvmCacheTtl()));
}

@Bean
public HazelcastCacheManager hazelcastCacheManager() {
    return new 
HazelcastCacheManager(Hazelcast.newHazelcastInstance(inMemoryHazelCastCache()));
}

@Lazy
@Bean
@DependsOn("inMemoryHazelCastCache")
public JVMCacheFacade<String> jVMCacheFacade(@Autowired HazelcastCacheManager 
hazelcastCacheManager) {
    IMap<String, String> cacheInstance = 
hazelcastCacheManager.getHazelcastInstance().getMap(configuration.getCacheName());
    return new JVMCacheFacade<>(cacheInstance);
}

Как показано в приведенном выше фрагменте, у меня есть 3 bean-компонента, inMemoryHazelCastCache для возврата конфигурации экземпляра кеша в памяти hazelcastCacheManager для получения HazelcastCacheManager с указанной выше конфигурацией jVMCacheFacade, чтобы получить фасад для доступа к собственному кешу, но по-прежнему экземпляр кеша с точным именем, с которым я создал конфигурацию, не возвращается. Мне здесь не хватает какой-нибудь основной c вещи?

...