1.3. 备份策略
Data Grid 集群可以使用不同的策略将数据备份到远程站点。
在站点间复制的数据网格同时写入本地缓存。例如,如果客户端将 "k1" 写入 LON,则数据网格同时将"k1"备份到 NYC。
1.3.1. 同步备份 复制链接链接已复制到粘贴板!
当 Data Grid 将数据复制到备份位置时,它会在写入本地缓存前等待操作完成。
如果备份操作失败,您可以控制 Data Grid 如何处理对本地缓存的写入。例如,您可以配置 Data Grid 来尝试中止本地写入,并在备份到远程站点时抛出异常。
同步备份还支持两阶段提交,带有参与最佳事务的缓存。备份的第一个阶段会获得锁定。第二个阶段将提交修改。
具有跨站点复制的两个阶段提交对性能有显著影响,因为它需要跨网络有两个往返。
1.3.2. 异步备份 复制链接链接已复制到粘贴板!
当 Data Grid 将数据复制到备份位置时,在写入本地缓存前,它不会等待操作完成。
异步备份操作和写入本地缓存相互独立。如果备份操作失败,对本地缓存的写入操作将继续,且不会发生异常。
1.3.3. 同步与同步备份 复制链接链接已复制到粘贴板!
同步备份提供了跨站点的数据一致性的最强保证。如果 strategy=sync,当 cache.put () 调用返回时,您知道值是本地缓存和备份位置的最新状态。
这种一致性的权衡是性能。与异步备份相比,同步备份具有更大的延迟。
另一方面,异步备份不会给客户端请求添加延迟,使其不会影响性能。但是,如果 strategy=async,当 cache.put () 调用返回时,您不能确保备份位置中的值与本地缓存中的值相同。