最近使用Mongo.Driver库开发一个应用去连接mongodb的一个副本集,其中mongodb的副本集搭建在同一台机器上(172.27.0.4,三个节点的端口分别时27014,27015,27016,关闭了认证并允许远程连接),应用部署在另外一台机器(172.27.0.5)。在使用MongoClient类时,传入的连接URL为:"mongodb://172.27.0.4:27014,172.27.0.4:27015,172.27.0.4:27016"(以ip加端口的格式,如图1)。
如果把应用也部署到mongodb的机器上,能连接成功,如果分开部署,连接会报如下异常:
System.TimeoutException”类型的异常在 MongoDB.Driver.Core.dll中发生,但未在用户代码中进行处理其他信息: A timeout occured after 3000ms selecting a server using CompositeServerSelector {
Selectors = ReadPreferenceServerSelector {
ReadPreference = {
Mode = Secondary, TagSets = []
}
}, LatencyLimitingServerSelector {
AllowedLatencyRange = 00: 00: 00.0150000
}
}.Client view of cluster state is {
ClusterId: "1