2

我的问题是关于 RMI 使用 ehcache 进行的缓存复制。假设我有 3 台服务器,它们相互复制缓存。在启动时,我想从其他正在运行的实例(引导程序)加载缓存。我的担忧是关于这些主题:

  1. 我在所有节点上都有内存缓存。我重新启动一个 node1 并在启动时(我同步引导 - bootstrapAsynchronously=false)我正在从 node2 加载缓存。如果在缓存完全复制之前 node2 突然关闭,会发生什么?复制是否会从 node3 继续(也已加载)?
  2. 如果我在异步模式下设置引导 - 它会引发一些关于复制已完成和实例完全加载缓存的事件吗?
4

1 回答 1

0

第一部分的答案是缓存不会启动。

请参阅http://ehcache.org/documentation/user-guide/rmi-replicated-caching#configuring-bootstrap-from-a-cache-peer

当一个对等点出现时,它将与其他缓存不一致。当引导程序完成时,它将部分连贯。Bootstrap 从随机对等点获取密钥列表,然后从随机对等点批量加载。如果引导失败,则缓存将不会启动。但是,如果发生缓存复制操作,然后被引导程序覆盖,则缓存可能会不一致。

于 2014-09-08T15:41:50.410 回答