【发布时间】:2012-04-07 08:58:27
【问题描述】:
我正在开发一个应用程序,到目前为止,该应用程序在单个服务器上的 JBoss AS 上运行。现在需要进行故障转移,为此我们要添加另一台服务器并创建 JBoss 集群。问题来了:
到目前为止,该应用程序使用 Hashmap 来存储我们从数据库中获取的大约 200 万条记录。 现在我必须将此数据复制到第二个节点(将来可能会添加更多节点)。 我们需要存储的数据现在更有可能是 500 万条记录。
我只想对存储此键/值类型数据并将其复制到所有服务器节点的最佳方法提出意见。
我一直在考虑 Redis 或 memcached 是否是合适的解决方案? JBoss Cache 怎么样,我知道它是分布式缓存,会复制到集群中的所有节点。
以下是我最担心的事情:
- 对性能的影响 - 复制可能导致数据网络延迟
- 质量 - 希望避免处理过时数据对内存的影响 -
- 一旦数据加载到 HashMap/Cache 中,它就不会过期。可能会有一些记录的添加或删除,这些更改必须在所有节点上复制。
- 可扩展性 - 正如我提到的......可以添加更多节点
对此的任何想法都非常感谢。
【问题讨论】:
-
复制一致性!啊!拿起一些中间件:)
标签: java caching jakarta-ee jboss memcached