我正在研究一个应用程序,该应用程序到目前为止已在单个服务器上运行在JBoss AS上。现在需要故障转移,我们正在添加另一台服务器并创建一个JBoss集群。这是问题:复制多个服务器之间的缓存数据
到目前为止,应用程序使用Hashmap来存储大约200万条从数据库中获取的记录。 现在我必须将这些数据复制到第二个节点(未来可能会添加更多节点)。 我们需要存储的数据现在更有可能是500万条记录。
我只想对存储此键/值类型数据并将其复制到所有服务器节点上的最佳方法有什么意见。
我一直在想,如果Redis或memcached会是一个合适的解决方案?如何JBoss缓存,我知道它是分布式缓存,并复制到群集中的所有节点。
这里有事情我最担心的:对性能
- 效果 - 复制会导致网络延迟,数据
- 质量 - 希望避免与陈旧的数据影响对内存的工作 -
- 一次数据在HashMap/Cache中加载它不应该过期。可能会添加或删除一些记录,这些更改将不得不在所有节点上进行复制。
- 的可扩展性 - 正如我所说...更多节点可以增加
对此有何想法受到了高度评价。
复制一致性! Aaargh!拿起一些中间件:) – PhD 2012-04-07 06:10:09