在不同的AWS区域上设置多主MySQL集群

问题描述 投票:0回答:1

我有一个聊天应用程序,已经有成千上万的用户。服务器位于美国俄勒冈州。用户遍布全球。我已经开始面临与印度用户的服务器响应速度慢相关的问题。我也想在印度建立相同的基础设施。主要问题是MySQL复制。在印度创建了一个新的MySQL主数据库,但由于数据库包含具有自动增量ID作为主键的表,因此,主数据库与主数据库的复制正在产生问题。据我了解,正在遵循以下过程

假设自动增量ID现在为1000,时间为XXXXXXX000 ms,俄勒冈州与孟买地区之间的延迟时间为200ms

  1. 在XXXXXXX000毫秒,Server1(US)在xyz表中添加新行,现在自动增量ID为1001。
  2. 同时XXXXXXX000 ms,Server2(Ind)在xyz表中添加了新行,现在同一表上的自动增量ID为1001。
  3. [在200毫秒后,在Server1(US)上执行的查询被复制到Server2(Ind),该服务器的自动增量ID为1001,但由于表已具有该值而无法执行。]
  4. 类似地,在Server2(Ind)上执行的查询被复制到Server1(US),该服务器的自动增量ID为1001,但由于表已具有该值而无法执行。

我发现的解决方案之一是按照定义的http://www.clusterdb.com/mysql-cluster/setting-up-mysql-asynchronous-replication-for-high-availability在两个主机上设置auto_increment_increment和auto_increment_offset值。我能够复制它,但是我不确定这是否是在AWS EC2上进行生产设置的正确方法。任何建议,将不胜感激。

我有一个聊天应用程序,已经有成千上万的用户。服务器位于美国俄勒冈州。用户遍布全球。我已经开始遇到与服务器响应缓慢有关的问题...

mysql database amazon-web-services database-design high-availability
1个回答
0
投票

您在[http://www.clusterdb.com/mysql-cluster/setting-up-mysql-asynchronous-replication-for-high-availability][1]]上找到的解决方案是在生产服务器上使用的正确方法。

© www.soinside.com 2019 - 2024. All rights reserved.