AWS:两个区域之间的RDS SQL Server之间的滞后问题

我们客户的数据政策意味着我们必须在英国/欧盟托pipe我们的数据库。

我们目前有一个美国西部EC2实例(Windows)作为Web服务器运行。 但是,自从添加新的伦敦RDS(SQL Server)实例以来,性能明显低于同一区域中的相同实例types。

我知道这两个地区的意思是有点滞后。 但是,我们能做些什么来否定缓慢? 请记住,我们只能将数据存储在英国。

RDS实例信息

  • t2.medium
  • 通用(SSD)
  • iOPS已禁用

大纲

根据这个网站 ,eu-west-2和us-west-2之间的平均等待时间大约是190ms。 这是很多延迟。 US-east-1的延迟时间大约为95ms,显着减less了。

大多数应用程序可能devise为假定数据库和应用程序服务器位于一起。 在这种情况下,应用程序可以频繁地请求数据库,而不会对应用程序产生任何重大影响。 高延迟打破了开发人员非常合理的假设。

最好的解决scheme – 集中/ CDN

最简单也可能是最好的解决scheme是将数据库和Web服务器放在一起。 我build议把这两个在同一地区,理想情况下相同的AZ。 使用CloudFront CDN通过caching靠近用户的大部分资源来提高性能。

这很可能符合您的合规性要求。

解决scheme二 – 只读副本

您可以在美国放置RDS只读副本。 更改您的应用程序,以便读取到本地数据库并写入到主数据库。

这可能不符合您的合规要求。

解决scheme三 – 数据库复制

你可能会运行你的数据库,所以有两个实时的主数据库不断地同步。 这有点增加了你的风险,你可能不得不在你的应用程序,或至less检测到这一点。

这可能不符合您的合规要求。