工作方式 - Amazon 内存 DB

工作方式

MemoryDB 多区域的工作原理如下。

  • 概念

    多区域集群是一个或多个区域集群的集合,所有这些集群均归单个 AWS 账户所有。

    区域集群是 AWS 区域中的单个集群,是多区域集群的一部分。每个区域集群存储相同的数据集。任何给定的多区域集群在每个 AWS 区域中只能有一个区域集群。

    当您创建多区域集群时,它包含多个区域集群(每个区域一个),MemoryDB 将其视为一个单元。当应用程序向任何区域集群写入数据时,MemoryDB 会自动异步地将该数据复制到多区域集群内的所有其他区域集群。您可以将区域集群添加到多区域集群中,使其可以在更多区域中使用。您将能够在最多五个区域之间自动复制 MemoryDB 集群数据。

  • 可用性与持久性

    在极不可能发生的区域隔离或区域降级事件中,您可以更新全局 DNS,将应用程序的流量重定向到其他健康的区域,而无需进行任何数据库重新配置,从而简化维护应用程序高可用性的过程。MemoryDB 在多可用区事务日志中持久存储来自所有区域的所有写入,以确保区域内数据无丢失。MemoryDB 多区域会跟踪所有已在区域内确认但尚未复制到所有成员集群的写入。如果某个区域被隔离或降级,它仍将继续接受本地写入。当被隔离的区域重新连接到多区域集群时,已确认但尚未复制到其他区域的写入将被复制到多区域集群中的所有区域。MemoryDB 多区域还会使用 CRDT 机制,自动将这些待处理的写入与中断期间在其他区域可能发生的任何更新进行协调。

  • 连接到 MemoryDB 多区域集群

    要向区域集群写入和读取数据,您需要使用受支持的 Redis OSS/Valkey 客户端(包括 Valkey GLIDE)之一连接到它。每个区域集群都有一个端点,您的 Redis OSS/Valkey 客户端可以连接到该端点。您可以使用 AWS 管理控制台、CLI 或 API 检索区域集群端点。然后,您可以在应用程序中使用(或配置)此端点从区域集群读取/写入数据。