您是否知道在不使用数据库的情况下,在Java EE应用程序中保存数据(比如说几个键值对)的Java EE兼容方法? 该解决方案应该可以在群集中使用。我知道数据网格的概念(例如JBoss中的Infinispan),但我更喜欢一种解决方案,其中应用程序不依赖于特定的应用程序服务器(例如,JCache会很棒,但据我所知,只能用作Infinispan的本地缓存,而不能用作分布式缓存。
例如,有可能以某种方式使用CDI保存数据(可能在上下文@ApplicationScoped中)吗?如果是的话,你能描述一下吗?
编辑:谢谢你的所有答案。现在所有人都建议我使用某些框架。但是,只有使用Java EE堆栈才能做到这一点。像这样?答案 0 :(得分:1)
如果我正确理解您的用例,这对于Infinispan是可行的,此外这是Infinispan的基本用法之一。在使用嵌入式库时,您的应用程序将不依赖于任何应用程序服务器,Infinispan能够以该嵌入模式创建群集。
请看,这个问题和我的答案,我希望这可以帮助你,并对你的问题有所启发:Infinispan Operational modes
答案 1 :(得分:0)
我认为您要搜索的内容称为内存中数据网格。例如,请查看Hazelcast。
你应该小心,如果重要的话,明确地存储数据(大部分时间用于提升缓存)。
答案 2 :(得分:0)
我甚至不知道这些条款。但是,使用XML作为数据存储怎么样? 这也可以共享。
答案 3 :(得分:0)
我认为可以使用Oracle Coherence API
答案 4 :(得分:-1)
尝试使用Terracotta中的Bigmemory,它提供内存数据缓存,并在群集世界中表现出色。