我们一直在为我们的电子商务网站使用Percona Mysql主从配置,即单主机和2个从机只读,以及另外一个从机进行备份和报告。
我们观察到负载没有分配,因为我们的主服务器加载了所有写操作,而奴隶只是用于读操作。
考虑到此限制,我们计划对数据库基础架构进行增强。
我们的一个选择是转向Percona XtraDB Cluster(master-master)。
请建议任何其他可能对电子商务网站有用的首选方法。
此致
查尔斯
答案 0 :(得分:0)
我们观察到负载未分配
这是100%正确。 Async Master-Slave不是自动分布式设置。您必须A)编写您的应用程序以使用所有服务器或B)使用中间件来分发连接(即:ProxySQL)。
考虑到这种限制......
这不是限制;自复制首次添加到MySQL以来,这是标准行为。
我们的一个选择是转向Percona XtraDB Cluster(master-master)。
Percona XtraDB群集不是" master-master"。 "主 - 主"是一个异步复制术语,限于2个MySQL服务器。 PXC是一个集群,使用同步复制,这意味着所有节点都作为一个单元参与。
主/从 - 从设置(与您的一样)应该可以轻松处理每秒数千个连接/事务。如果您当前的设置无法处理,您要么A)严重错误配置MySQL和/或B)极低的硬件。
请注意,切换到PXC / Galera也不会自动平衡连接/查询。在这种情况下,您还需要中间件。即使在PXC中,所有写入仍将转到1个节点。
答案 1 :(得分:-1)
您可以使用Galera Cluster解决方案。我们将它与MariaDB一起用于包含数百个请求的大型API。
如果您想了解更多细节,请写信给我。试一试;)