实时升级 NCache 100% 正常运行时间

NCache 是一种极其快速且可扩展的内存 分布式缓存 适用于 .NET 应用程序。它主要用于读取密集型任务关键型生产环境。在此类应用中,高可用性和 100% 正常运行时间至关重要,这使得 NCache 一种必需品。

主要功能之一 NCache 为此类环境提供的是 Live Upgrade,它可以让您在不停机的情况下升级到较新版本。 NCache 在线升级是一种零停机迁移机制,旨在版本转换期间保持 100% 的可用性。它利用主备桥接拓扑结构,在不同版本之间实时同步数据。 NCache 版本控制,实现无缝过渡,不会丢失数据或中断应用程序。

缓存集群的 Live Upgrade 是如何工作的?

实时升级显著减少了手动服务器升级通常带来的延迟。它允许您以最小的延迟升级缓存集群的所有服务器。由于 NCache,按照设计,要求所有服务器运行相同版本的 NCache,这可以防止任何版本不兼容问题。

为了使您的集群版本保持最新, NCache 提供 用于 WAN 复制的桥接拓扑 充当两个缓存集群之间的桥梁。通过这种方式,您可以将当前正在运行的缓存的数据增量复制到最新的 NCache 在缓存继续运行时使用该桥接缓存。

此实时升级过程类似于蓝绿部署策略。您的“源”集群充当“蓝色”环境,而“目标”集群充当“绿色”环境,桥接器确保在最终切换之前实现数据一致性和无缝同步。

NCache 实时升级示意图:蓝绿迁移,展示通过桥接拓扑将数据从源集群同步到目标集群
NCache 零停机时间实时升级和蓝绿迁移工作流程。

按照此处提供的步骤通过 Live Upgrade 升级集群的缓存。

第一步:隔离服务器子集进行软件升级

在您的集群中,如果您有 2 个或更多缓存服务器,请取出其中的一部分以升级 NCache 这些服务器上的服务器软件。

取出子集时,最好总共有 4 台或更多缓存服务器,以便源集群中至少剩下 2 台服务器。然而,在这种情况下,如果唯一支持应用程序的服务器发生故障,您的应用程序可能会停机。

步骤 2:新集群初始化 NCache 选项

升级后 NCache 在两台或更多缓存服务器上,创建一个包含所有服务器的集群,并在这些服务器上启动缓存。每个子集群中必须至少有两台服务器,以确保高可用性——如果只有一台服务器发生故障,可能会导致停机。

步骤 3:通过主动-被动桥接拓扑同步数据

成功创建包含所有运行较新版本 NCache, 创建桥梁 在新集群(通常称为 目标缓存) 和旧版本集群 (源缓存).

要创建此桥接器,您可以使用两台专用服务器和旧版本的 NCache 或者在两台运行旧版本 NCache. 使用 Bridge 拓扑的主动-被动配置,并等待目标集群与源集群完全同步。

在 Bridge 节点上,您需要添加目标缓存的 IP 地址来填充 Bridge 服务器。您可以通过以下方式执行此操作: 网桥.ncconf 如下:

<configuration>
  <bridge-config ... >
      <cache ... servers-list="20.200.20.38, 20.200.20.29" ... />
   </bridge-config>
</configuration>

步骤 4:分阶段客户端迁移到目标集群

两个集群完全同步后,您需要将部分客户端迁移到新版本的缓存集群。迁移完成后,您需要立即停止所有连接到旧版本的客户端。这种通过主动-被动桥接进行的缓存客户端迁移可确保数据不丢失,并且客户端应用程序运行不会中断。

步骤五:完成剩余节点的升级

客户端连接成功转移到目标集群后,需要停止并升级源集群。升级完成后,这些节点将重新加入目标集群,恢复完全高可用性,并提升新版本环境的总计算能力。

这应该是您使用 Live Upgrade 功能的最后一步 NCache 升级现有的缓存集群。

第 6 步:将所有缓存客户端迁移到新集群

现在您需要将连接到旧版本的剩余客户端迁移到新版本缓存集群。 成功迁移所有客户端后,您可以开始在它们上运行应用程序。

将旧客户端与新缓存集群一起使用

如果你不想升级缓存客户端, NCache 允许旧版本客户端与新版本缓存集群无缝协作。因此,您可以自行决定是否升级客户端或保留旧版本 NCache 您的应用程序服务器或 Web 服务器上的客户端(NCache 远程客户端)。即使所有缓存服务器都升级到较新版本,您的应用程序仍能完美运行。这是因为 NCache 提供 向后兼容 为客户。

使用具有向后兼容性 API 的新缓存客户端

建议升级 NCache 由于较新的客户端可能包含任何请求的错误修复,因此您的应用程序和 Web 服务器上的客户端软件可能会被打包。此过程非常简单且无缝。这是因为较新版本的客户端向后兼容旧版本。这种兼容性使您的应用程序可以与较新的客户端兼容,而不会注意到任何变化。在您的应用程序中使用实时升级的最大优点是它不需要任何代码更改或重新编译。您只需升级 NCache 客户端软件,其余部分将自动为您完成。

要获取有关如何使用 Live Upgrade 功能升级您的 NCache 集群,请遵循我们的文档 实时升级 NCache 版本.

接下来做什么?

常见问题

NCache 通过采用临时主备桥接拓扑结构,实现了 100% 的正常运行时间。该拓扑结构充当同步层,在“源”(旧版本)集群和“目标”(新版本)集群持续运行的同时,实时地将数据复制到“目标”(新版本)集群。

不,这不需要任何代码更改或重新编译。这是可行的,因为 NCache 为客户端提供向后兼容性,使您的应用程序能够与较新的服务器版本无缝协作,而不会察觉到任何变化。

是的,您可以保留旧版本。 NCache 应用程序或 Web 服务器上的客户端。 NCache内置的向后兼容性确保即使所有缓存服务器都已升级到最新版本,您的应用程序也能完美运行。

桥接器充当两个独立集群之间至关重要的数据传输链路。它允许您将数据和客户端连接从旧的“蓝色”环境逐步迁移到新的“绿色”环境,而不会造成数据丢失或中断。

联系我们

联系电话

+1 214-619-2601 (美国)

+44 20 7993 8327 (英国)

©版权所有 Alachisoft 2002 - 版权所有。 NCache 是 Diyatech Corp. 的注册商标。