【发布时间】:2016-04-29 08:41:01
【问题描述】:
我们正在尝试以一种可以轻松交换任何符合 JSR-107 的缓存提供程序的方式来实现 JCache。我们正在使用 Spring,我们的 CachingProvider Bean 看起来像这样:
@Bean
public CachingProvider cachingProvider() {
CachingProvider cachingProvider = Caching.getCachingProvider(env.getProperty("jcache.provider.fullyQualifiedName"));
return cachingProvider;
}
这允许我们通过在我们的属性文件中添加完全限定名称并当然将 jar 添加到类路径中来换入和换出我们想要的任何兼容缓存。目前,为了实现 Hazelcast,我们的配置文件如下所示:
jcache.provider.fullyQualifiedName=com.hazelcast.cache.HazelcastCachingProvider
但是,我想为此实现 spymemcached,但我无法找到它的完全限定名称(或任何其他符合 JSR-107 的实现)。
所以我的问题是,有没有人知道 Spymemchaced 或任何其他符合 JSR-107 的缓存提供程序的完全限定名称?我用谷歌搜索了又谷歌,但仍然无法提出任何建议。
【问题讨论】:
-
由于 memcached 不支持迭代,完全兼容的 memcached 提供程序是不可能的。 EntryProcessors 更难,但可以使用分布式锁来模拟。有一些临时提供程序,例如this one。提供者的限定名称存储在 jar 的
META-INF/services/javax.cache.spi.CachingProvider文件中
标签: java spring caching memcached