测试场景
1.3台服务器
2.代码中循环查询。
3.kill掉非仲裁服务器的一台
测试结果
查询结束
预期结果
继续查询
应如何面对这种情况????
@wendal 给个模板,哈哈哈。
还有一个问题,就是这些操作的日志如何打印????
其实你需要的是转化为ioc配置的技能, 对应的工厂方法是这样的
public static ZMongo me(List<ServerAddress> sas,
List<MongoCredential> creds,
MongoClientOptions mopt) {
return new ZMongo(sas, creds, mopt);
}
随手写一个,你试试行不行吧
mongo_serv1 : {
type : "com.mongodb.ServerAddress",
args : ["127.0.0.1", 30000]
},
mongo_serv2 : {
type : "com.mongodb.ServerAddress",
args : ["127.0.0.1", 31000]
},
mongo_serv3 : {
type : "com.mongodb.ServerAddress",
args : ["127.0.0.1", 32000]
},
zMongo : {
args : [[{refer:"mongo_serv1"}, {refer:"mongo_serv2"}, {refer:"mongo_serv3"}], {}, null],
factory : "org.nutz.mongo.ZMongo#me"
}
@wendal 修改了一下配置
zMongo : {
args : [[{refer:"mongo_serv1"}, {refer:"mongo_serv2"},{refer:"mongo_serv3"}], [], null],
factory : "org.nutz.mongo.ZMongo#me"
}
可以正常跑,当停掉主节点后,仍然无法继续查询。。。