【发布时间】:2015-06-23 08:45:26
【问题描述】:
我一直在阅读有关 Java 缓存的更多信息,并想知道是否可以使用 nosql 系统对其进行扩展,以便跨多个系统的 Java 应用程序可以拥有一个公共缓存;即 10 个应用服务器都在代理后面的分布式架构上运行相同的应用程序,可以共享存储在诸如 memcached 之类的 nosql 系统上的公共 java 缓存。
有人知道这样的事吗?
【问题讨论】:
我一直在阅读有关 Java 缓存的更多信息,并想知道是否可以使用 nosql 系统对其进行扩展,以便跨多个系统的 Java 应用程序可以拥有一个公共缓存;即 10 个应用服务器都在代理后面的分布式架构上运行相同的应用程序,可以共享存储在诸如 memcached 之类的 nosql 系统上的公共 java 缓存。
有人知道这样的事吗?
【问题讨论】:
Java Cache API 仅定义了一个与技术无关的 API,用于从 Java 应用程序访问缓存。
主要的实现是 EHCache、JBoss TreeCache 和其他一些,但我不明白为什么不能实现一个适配器来使用 MongoDB、memcached 或任何其他 NoSQL 数据库。
所以从技术上讲,是的,它应该是可行的。但是 API 仍然相对较新,所以这些适配器可能很快就会由您最喜欢的数据库提供商实现。
有关现有实现,请参见此处:JSR 107 implementations
【讨论】:
这无疑是一种可行的架构方法。您可能想查看这篇文章,其中提供了有关分布式缓存如何帮助分发 Java 应用程序的更多详细信息:
http://www.cacheonix.org/articles/How_to_Distribute_Java_Application_on_Multiple_JVMs.htm
【讨论】: