我有一个多主MySQL集群,我想通过使用负载均衡器将来自Rails项目的读/写查询分布到多个服务器。
据我所知,问题是Rails试图在服务器的生存期内使连接对象保持活动状态。但是,HAProxy仅在每个查询打开新连接时才分发查询。这不是我想要的。我想基于每个查询而不是每个连接进行分配。
在每个查询的基础上,如何将Rails查询从服务器分发到多主服务器,我有哪些选择?
注意:这是一种高可用性情况,我们不确定每个sql服务器是否始终处于启动状态。这就是为什么我使用haproxy。
最佳答案
haproxy确实在第4层上实现了负载平衡,并且在第7层上需要了解mysql协议的内容。 haproxy将无济于事。
“ MySQL负载平衡器”是一种尝试,我不知道是否有人在生产中使用它。在此article中,您可以看到有关为此使用TrafficScript的一些技巧,最后,我认为没有任何稳定的软件可以满足您的需求。