【问题标题】:Active -Active Cross-Region Redis Replication主动-主动跨区域Redis复制
【发布时间】:2020-10-26 03:37:26
【问题描述】:

AWS 今年为 主动 - 被动 设置(Global DataStore)引入了跨区域复制。这意味着有一个用于读取/写入的主 Redis 集群和一个用于读取的辅助集群。

在我的例子中,我们想在不同的地区使用 Active - Active Redis。最初的想法是手动将 Redis 集群与 Kinesis 流同步,并且每当有写入和更新其他区域时触发 Lambda 函数,例如当区域 A 发生写入时,Lambda 会更新区域 B 中的 Redis,反之亦然。这允许在两个区域中写入。

是否可以让 Active Active 与 Global Datastore 一起使用?

或者当写入操作总是转到部署主 Redis 集群的同一区域时,全局数据存储区是否会像手动解决方案一样工作(在延迟方面)??

欢迎任何反馈

【问题讨论】:

  • 你检查过Redis Active-Active CRDB吗? redislabs.com/landing/active-active
  • @GuyKorland,谢谢,但这不需要在 EC2 上安装 Redis,这会导致维护问题。我们实际上是在尝试使用 AWS 托管服务来减少开销。
  • Redislabs 已在 AWS 上托管解决方案 redislabs.com/redis-enterprise-cloud
  • 所以我在 AWS 市场上找到的 Active Active CRDT。 AWS 上的部署情况如何?这是否适合我们的快速chaching 解决方案?
  • 我想这不是此类帖子的正确位置,您应该联系Redislabs或在论坛forum.redislabs.com/上询问

标签: amazon-web-services redis replication aws-elasticache


【解决方案1】:

如何连接同一个 Transit VPC 中的不同区域,以便您可以从任何(连接的)区域访问读/写端点?

https://docs.aws.amazon.com/AmazonElastiCache/latest/mem-ug/elasticache-vpc-accessing.html#elasticache-vpc-accessing-different-vpc-different-region

尚未测试,我目前正在尝试实现此功能,但来自 AWS 控制台的相应 CloudFormation 模板已损坏。

但是,该解决方案仍然可以解决问题,当然可以接受延迟,但至少不应该有额外的工作来维护本地区域资源、Lambda 等。

这听起来怎么样?

【讨论】:

    【解决方案2】:

    很遗憾,目前 ElastiCache 中没有针对主-主的 AWS 解决方案

    以下是您可以采取的一些解决方案:

    • 在您的应用程序中使用 Redis 的写入端点和读取端点,写入端点将针对主要写入全局数据存储,读取将针对本地读取数据存储
    • 写入本地区域资源(例如 DynamoDB),让 Lambda 触发器写入主写入全局数据存储。
    • 写入本地区域队列/流,例如 SQS 或 Kinesis Data Streams(支持 Lambda 使用者)并让 Lambda 使用和写入。

    任何解决方案都会有一定程度的延迟,选项 1 执行直接写入,而其他 2 允许进程在后台发生。此处的决定将基于您的应用程序(是等待写入完成,还是需要在流程中发生)。

    另外,如果这是为了写缓存,你可以只使用缓存启动吗?我的意思是通过脚本生成扁平化缓存,以确保您的 redis 集群始终是最新的。

    【讨论】:

    • 由于 SLA 非常严格,应用程序需要主动主动设置。写入实际上只是为了使缓存保持最新以供以后的请求使用。缓存的目的是允许从两个区域进行快速本地读取。我在考虑选项 1,将写入转发到主 EP,但不确定在那种情况下延迟会是什么样子(跨区域写入)
    • 我想这取决于区域之间的距离以及它们之间是否有直接联系。我相信最远的地区有 200 毫秒的往返行程(尽管这可能是错误的)。而如果这些区域非常接近,则此延迟将显着减少。更多信息:cloudping.co/grid
    • 我接受了这个答案,因为这是 AWS 服务的现状。
    猜你喜欢
    • 2021-01-23
    • 2018-12-07
    • 2019-11-17
    • 2023-03-27
    • 2021-11-15
    • 1970-01-01
    • 2022-12-16
    • 2018-05-26
    • 2016-03-20
    相关资源
    最近更新 更多