数据库
首页 > 数据库> > mysql-AWS DynamoDB和RDS多个区域同步

mysql-AWS DynamoDB和RDS多个区域同步

作者:互联网

我有以下场景,其中一家公司在亚马逊云上有两个区域,即美国的第1个区域和亚洲的第2个区域.在当前架构中,AWS DynamoDB和MySQL-RDS解决方案在美国地区使用和安装.拥有业务逻辑的亚洲地区的EC2服务器必须访问美国地区的DynamoDB和RDS才能获取或更新数据.

该公司现在希望在亚洲区域安装DynamoDB和MySql-RDS以获得更好的性能,因此亚洲区域的EC2服务器可以从同一区域获取所需的数据.

现在的主要问题是如何在两个区域之间同步数据,当前的DynamoDB和RDS本质上不支持多个区域.

在这种情况下是否有最佳做法?

解决方法:

当访问来自不同地理位置时,这是一个大问题.

较晚的RDS对跨区域“读取”副本提供了一些支持.在这里看看. http://aws.amazon.com/about-aws/whats-new/2013/11/26/announcing-point-and-click-database-replication-across-aws-regions-for-amazon-rds-for-mysql/

Dynamo DB没有此功能.您可能需要考虑对数据进行分区(将亚洲的数据保留在亚洲,将美国的数据保留在美国).另一种可能性是通过使用内存中缓存来提高速度.不要始终对所有读取都访问Dynamo DB:每次成功读取后,将对象缓存在AWS Elasticache中-将缓存设置为靠近所需区域(您将需要多个缓存集群).然后所有读取将很快(因为它们现在位于区域本地).当数据更改(写入)时,也会使缓存中的对象无效.

但是,此方法只能加快读取速度(但不能加快写入速度).通常,大多数应用都可以做到这一点.

标签:amazon-web-services,amazon-ec2,amazon-dynamodb,amazon-rds,mysql
来源: https://codeday.me/bug/20191122/2056815.html