Ric*_*ich 8 cluster-computing mongodb
如果在Mongo中仅使用两个节点设置副本集,则需要添加仲裁器以确保对新主节点的投票总是占多数.仲裁者本身永远不会成为主人,只是在其他方面进行选举时提供投票.
将客户端(在我的Java中)连接到MongoDB集群时,我们应该在连接配置中指定集群的所有节点:
List addrs = new ArrayList();
addrs.add( new ServerAddress( "localhost" , 27017 ) );
addrs.add( new ServerAddress( "localhost" , 27018 ) );
Mongo mongo = new Mongo(addrs);
Run Code Online (Sandbox Code Playgroud)
仲裁器是否应包含在连接配置中?我猜不会像他们一样:
没有数据的副本,永远不会成为主要节点(甚至是可读的次要节点)
(摘自这里)
...但我只想仔细检查!
不,您不需要在连接中包含仲裁者.
毕竟,正如您所怀疑的那样,在您的代码中尝试连接到其中一个代码时没有什么意义,因为那里没有数据.他们只是在风险背后做他们的事情来帮助自动故障转移.
您甚至不必指定连接配置中的所有服务器(甚至不是主服务器) - 只要您提到的其中一个服务器返回响应,它就可以从那里找到主服务器.虽然恕我直言,你的名字越多越好,但只是让其中一些人失望.
| 归档时间: |
|
| 查看次数: |
2474 次 |
| 最近记录: |