如果您的业务严重依赖数据,尤其是运行高流量系统,那么即使是最小的数据丢失可能性也可能令人担忧。在这些情况下,灾难恢复的想法似乎令人难以承受,尤其是在处理本质上不稳定的瞬时数据时。瞬时数据可以包括 ASP.NET 会话、任意应用程序数据或聚合数据。此外,如果您丢失了缓存数据,则必须从数据库重新加载,这可能会对性能产生负面影响 - 这是任何人都不希望看到的。
关键要点:
同伴互助韧性: NCache 通过去中心化架构消除单点故障 (SPOF),确保即使在节点故障期间集群也能保持功能。
冗余缓存拓扑: 通过多种数据分发模型保证高可用性,特别是镜像、复制和分区副本拓扑结构。
自愈集群: 该系统采用基于 TCP 的动态集群协议,可自动检测节点成员变更并重新分配数据,而不会造成停机。
多站点灾难恢复: 异步广域网复制可保持主数据中心和辅助数据中心之间的数据同步,以防止整个站点中断。
幸好, NCache 在设计时,我们认识到在处理分布式缓存解决方案时,峰值负载故障、系统中断和其他问题是不可避免的。因此,我们努力尽可能确保缓存数据的高可用性。
核心可靠性特性: NCache 通过对等自愈架构、多个冗余拓扑和异步 WAN 复制实现跨区域故障转移,从而实现 100% 的正常运行时间。
因此,规划灾难恢复时 NCache 尽快,让我们指导您完成整个过程。在对您的缓存层进行全面的风险评估后(例如,如果您正在考虑数据中心,则识别敏感数据并指定被动站点),您应该确定潜在的恢复策略。然后,在实施后进行演练以确保您的策略有效。让我们在下面探索其中的一些选项。
如何 NCache 帮忙解决这个问题吗?
NCache 为灾难恢复提供了几种应急措施,其中最重要的是:
创新中心 NCache 确保分布式集群的高可用性 (HA)
作为内存中的分布式数据缓存解决方案, NCache 提供一种架构,即使在高流量或系统停机期间也能保证高数据可用性。其对等架构避免了与单点故障相关的问题。
NCache 提供各种缓存拓扑以确保高可用性,包括:
- 镜像拓扑:双节点群集,其中一个节点为主动节点,并在被动节点上进行镜像。
- 复制拓扑:每个节点上都有相同复制数据的集群。
- 隔墙-复制品 拓扑:集群分为多个分区,每个分区在不同的服务器上进行复制。副本是被动的,这意味着客户端无法连接到它们,直到主动节点被视为死亡或永久不可用。
下表总结了每项 NCache 拓扑结构根据您的具体用例处理高可用性:
| 拓扑 | 最适合 | 可用性机制 |
|---|---|---|
| 镜像 | 小集群 | 1 个活动副本,1 个被动副本 |
| 已复制 | 阅读密集型应用 | 每个节点上都有完整的数据副本 |
| 分区副本 | 可扩展、高流量 | 具有被动副本的活动分区 |
根据您的应用程序要求,这些拓扑中的任何一种都可能是实现高可用性的理想选择。例如,在镜像拓扑中,如果主动节点发生故障,您可以从以前的被动节点获得完整的副本。同样,在分区副本拓扑中,如果主动节点被视为死亡并丢失分区,则其副本将可用以开始提供数据。在复制拓扑中,每个节点都有整个缓存的副本,从而保证高可用性。
此外, NCache的点对点架构使 自愈动态集群。此基于 TCP 的动态集群提供 100% 的正常运行时间,且不会中断集群。此外, NCache的负载平衡功能可以有效地分配流量,防止服务器过载。
通过实时数据持久性确保数据持久性
为了更加安心, 坚持 涉及将数据写入特定位置以进行持久存储和备份。在持久性存储中存储项目的机制是异步的,并通过持久性队列进行。缓存重新启动后,缓存会自动重新填充,无需用户配置(假设持久性存储已设置)。集群中的每个节点都可以访问集中式存储以重新填充任何丢失的数据。
通过广域网复制实现多区域灾难恢复 (DR)
对于事务性较高的应用程序,灾难恢复通常由一个或多个数据中心管理。通常,这涉及位于不同地理区域的主动数据中心和被动数据中心。
NCache 通过提供WAN复制 桥。 在主动-被动配置中,您部署 NCache 在主动和被动站点上。主动站点使用桥接拓扑将其缓存中的所有更新发送到桥接,然后桥接在几毫秒内异步传输它们到被动站点(基于数据中心之间的距离的最小延迟)。

图1: NCache 通过异步广域网复制实现多站点灾难恢复。
异步复制意味着每个站点的应用程序和缓存无需等待其数据在数据中心之间复制。相反,更新会在桥接器(一个双节点集群)上排队。如果您有三个或更多数据中心,桥接器会将传入的更新并行应用于多个活动站点并执行批量更新,将多个数据项合并为一个请求以减少网络往返次数。
如果主动站点因灾难而瘫痪,桥接器和应用程序也将瘫痪,但被动站点将接管并成为新的主动站点,处理所有应用程序流量。所有数据都将从原始主动站点复制到原始被动站点,不会对用户造成任何干扰。原始主动站点恢复后,它将连接到新的主动站点(原始被动站点)并完全同步。同步后,两个数据中心都具有主动-主动配置,并且可以将流量卸载到原始主动站点。然后可以在运行时在桥接器上将主动-主动站点的状态恢复为被动。
备份和恢复
如果某个特定版本的数据至关重要,则可以使用 NCache“ 导入/导出缓存数据 特征。 您可以使用 导出缓存数据 PowerShell cmdlet 导出缓存数据。导出后,您可以使用 导入缓存数据 小命令。
结语
总之, NCache 提供一套强大的工具来确保高可用性,包括多功能拓扑、高级架构和有效的 WAN 复制功能,可减轻灾难期间数据丢失的风险。此外,它还支持两种类型的备份,进一步保护您的数据。下载 NCache 今天就实施一个强大的缓存解决方案,帮助您度过繁荣和充满挑战的时期。
常见问题
问:为什么高可用性对于像 ASP.NET 会话这样的瞬态数据至关重要?
答:瞬态数据本质上是易失性的。在高流量系统中,丢失此类数据(例如用户会话或购物车)会强制从数据库重新加载,从而造成性能瓶颈并对用户体验产生负面影响。 NCache 它通过在内存中保留一个实时冗余副本来防止这种情况发生。
问:如果活动节点发生故障,分区副本拓扑会发生什么情况?
答:如果某个活动节点被判定为故障,其对应的被动副本会立即投入使用,开始提供数据服务。这确保了因故障节点丢失的特定数据分区仍然可以被应用程序访问,而不会中断服务。
问:怎么做 NCache 持久化与标准备份有何不同?
答:与手动备份不同, NCache实时数据持久化是一种异步机制,它通过持久化队列将数据写入持久存储。如果缓存重启,它会自动从该存储中重新填充数据,无需用户手动干预或配置。
问:主备广域网配置的优势是什么?
答:在这种架构中,主站点处理实时流量,同时通过桥接器将更新异步复制到地理位置不同的被动站点。如果主站点发生彻底故障,已同步的被动站点将接管成为新的活动站点,处理所有应用程序流量。
问:怎么做 NCache 故障站点恢复后如何处理数据同步?
答:一旦原有的活动站点恢复,它将连接到当前活动站点(即之前的被动站点),并进行完整的同步。同步完成后,两个数据中心将达到“双活”状态,从而可以将流量卸载回原站点。






