2

我创建了一个分片环境,我正在使用两个 mongos。他们是我可以在两个“mongos”之间进行负载平衡的一种方式,因为目前我发现 Mongo 客户端使用两者之一。或者我是否必须编写自己的负载平衡器?

4

2 回答 2

4

建议是每个应用程序服务器都有一个 mongos,而不是实现您自己的负载均衡器。

查询可能不会在一批中返回整个结果,在这种情况下,mongos 将存储一些与游标相关的信息。如果后续使用游标进行迭代的请求未重定向到相同的 mongos,那么您将收到错误。负载均衡器需要了解 MongoDB 二进制线路协议,以确保正确处理该场景。

请参阅: http ://craiggwilson.com/2013/10/21/load-balanced-mongos/

于 2015-04-28T15:44:48.823 回答
0

我们有同样的问题。看起来 Java Mongo Client 可以自己进行故障转移连接。请参阅此问题的答案。 MongoDB 负载均衡和查询路由器的故障转移

于 2013-11-04T23:07:27.553 回答