负载均衡 – MySQL负载均衡

我正在研究如何平衡MySQL基础架构的负载,似乎无法找到适合我的答案…… 🙂

所以,我有一个大而胖的服务器,可以处理所有事情.许多数据库,许多读取,许多写入等等.它处理得很好,但它是一个单点故障.

我们已经设置了几个从属服务器来重定向读取,但遇到了两个问题:重建所有程序以分割读写需要花费很多精力;有时奴隶会落后,这会在应用程序中产生非常有趣的文物.

奴隶问题落后的问题:因为许多数据库是混合的 – 在数据挖掘方面进行了大量10-20分钟的查询,以及不需要时间的原子查询.但Slave一次运行一个查询,因此所有原子查询都必须等到重的查询结束.

为了解决这两个问题,我正在考虑像代理这样的东西,它会考虑这个:

>自动拆分读/写
>服务
作为单一的入口点然后
将请求重定向到适当的
需要数据库的服务器(例如
在后端分离db1和db2,
但要让它透明
应用)
>注意奴隶滞后,
当发送时,将读取发送给主服务器
奴隶滞后发生(如果
这可以按照数据库完成;
但服务器范围很漂亮
太棒了)
>负载均衡读取
在所有符合条件的奴隶之间(或
通过简单的循环,或通过
监测洛杉矶)

仍然存在但仍需要考虑的一个问题是故障转移.如果master失败 – 如果slave会承担master的职责,那么会很好,当master恢复时 – 它会变成奴隶.

有关RTFM的任何指示或关于此主题的案例研究都是受欢迎的=)

编辑:谷歌搜索更多,除了钨企业 – 发现dbShards和Schooner.在深入研究这一点时 – 有没有人有这些解决方案的经验?任何反馈?

最佳答案
查看Tungsten Enterprise

MySQL-MMM不是推荐的解决方案.见:http://www.xaprb.com/blog/2011/05/04/whats-wrong-with-mmm/甚至其中一位原作者在评论中同意.

干杯

编辑:oops,第二个链接与第一个相同.更正

转载注明原文:负载均衡 – MySQL负载均衡 - 代码日志