我一直在以这种方式使用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将启用哪些其他功能?
答案 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深入解释的是一本很好的读物。