我正在尝试为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描述如何设置超时。

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

最佳答案

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

  • connectTimeout
  • socketTimeout
  • heartbeatConnectTimeout
  • heartbeatSocketTimeout
  • 07-26 09:42