JCache(JSR-107)与Singleton EJB

时间:2013-12-14 09:17:32

标签: java-ee ejb jcache

我一直在以这种方式使用Singleton-EJB(如Adam Bien在他的blog中所示):

@Singleton
public class MyCache {

    ConcurrentHashMap<String, Object> myMap= new ConcurrentHashMap<String, Object<>();

    //...Crud methods to the map
}

现在JCache是​​java-ee-8的候选者,我在JCache spec中阅读了以下内容:

  

Cache是​​一种允许临时的类似Map的数据结构   存储基于密钥的值。 Cache由一个人拥有   的CacheManager。

假设JCache进入下一个java-ee规范,是否应该优先考虑其他内容?

JCache API将启用哪些其他功能?

2 个答案:

答案 0 :(得分:1)

JCache现在非常有趣,因为它已经在Java EE 8中作为最终提交,并且正在获得更广泛的供应商支持。

特别是,有趣的事情之一是对入口处理器的支持,这是一种与分布式数据通信的方式,通过在集群中使用分布式处理,最大限度地提高内存性能,同时最小化锁定和并发问题

JCache看起来像是一种看待普通旧缓存的全新方式,它将整个会话迁移到完全分布式缓存,这些缓存利用集群中的RAM和CPU。这样可以采用比本地缓存更加云友好(读取:弹性可扩展)的方式来处理分布式计算,并且除了分布式RAM之外,还可以利用分布式处理。

答案 1 :(得分:0)

  

现在JCache是​​java-ee-8的候选者

JCache确实很有可能使用Java EE 8,但不要忘记你已经可以在Java EE 7甚至Java EE 6中使用参考实现。

  

JCache API将启用哪些其他功能?

JCache的一个特别好的现代功能是CDI bean的缓存注释。除了方便之外,他们也可能能够帮助JSF咨询吸气剂和其他方法的情况。

我收集了许多与JCache相关的文章here。特别是2011年由规范领导Greg Luck深入解释的是一本很好的读物。