Hazelcast是否支持同步(sync)@Cacheable实现

Dzm*_*nka 1 hazelcast spring-cache hazelcast-imap

我想使用 hazelcast 作为 spring 的缓存提供程序。假设我能够配置集群并选择正确的 hazelcast CacheManager 实现。

我想确保 hazelcast 缓存支持“同步”注释属性,如此处所述

我想确保编写像这样的代码

@Cacheable(cacheNames="foos", sync=true)
public Foo executeExpensiveOperation(String id) {...}
Run Code Online (Sandbox Code Playgroud)

...将为我保证条目将被锁定,而缓存值将由 CacheLoader 计算。

现代版本的 hazelcast 支持同步缓存实现吗?

我知道分布式读取 IMap 具有与同步缓存类似的行为。我可以通过按键显式锁定映射条目。我应该使用这些结构作为替代吗?

Ste*_*oll 5

是的,正如该拉取请求所示,从 3.7 开始就支持它。如果您使用 Hazelcast 作为 JSR107 提供者,它也可以工作,因为 Spring 的 JCache 抽象也实现了这个契约。