小编Tùn*_*hai的帖子

com.mongodb.MongoTimeoutException 使用带有列表 ServerAddress 的 MongoClient 时

我正在尝试将副本数据库部署到具有不同端口的一台服务器上并与之连接。如果我只使用单个 ServerAddress 并像这样直接连接到主数据库,则一切正常:

mongoClient =new MongoClient(new ServerAddress("104.236.106.53", 27000));
morphia = new Morphia();
ds = morphia.createDatastore(mongoClient, "morphiaDB");
Run Code Online (Sandbox Code Playgroud)

一切正常。但是当我尝试这样使用时List<ServerAddress>

List<ServerAddress> lstServer = new ArrayList<ServerAddress>();
lstServer.add(new ServerAddress("104.236.106.53", 27000));
lstServer.add(new ServerAddress("104.236.106.53", 27002));
lstServer.add(new ServerAddress("104.236.106.53", 27001));
mongoClient = new MongoClient(lstServer);
morphia = new Morphia();
ds = morphia.createDatastore(mongoClient, "morphiaDB");
Run Code Online (Sandbox Code Playgroud)

最终会出现这个错误:

SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
SLF4J: Defaulting to no-operation (NOP) logger implementation
SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
Exception in thread "main" com.mongodb.MongoTimeoutException: Timed out after 10000 ms while waiting for a server …
Run Code Online (Sandbox Code Playgroud)

java timeout mongodb mongodb-java

5
推荐指数
1
解决办法
1万
查看次数

标签 统计

java ×1

mongodb ×1

mongodb-java ×1

timeout ×1