MongoClient不尊重connectTimeout

时间:2015-03-13 10:59:46

标签: java mongodb mongo-java-driver database

我正在尝试为MongoClient设置连接超时(驱动程序版本2.13)。

它会挂起10秒然后超时。我需要快速超时,因为此代码用于测试。

这是我的代码:

String connectionUri = properties.getProperty("application.mongo.url");
System.out.println("******     "+  connectionUri  + "*******");
MongoClientOptions mongoClientOptions = MongoClientOptions.builder()
                                                .connectTimeout(500)
                                                .build();

MongoClient mongoClient = new MongoClient(connectionUri, mongoClientOptions);

javadoc is describes the connectTimeoutthis post描述了如何设置超时。

有没有人遇到类似的问题并解决了?

1 个答案:

答案 0 :(得分:3)

如果要测试服务器连接,则应使用MongoClientOptions.builder().serverSelectionTimeout(500).build()。要设置的其他属性如下:

  • connectTimeout
  • 了socketTimeout
  • heartbeatConnectTimeout
  • heartbeatSocketTimeout