MongoClient не уважает connectTimeout

83
13

Я пытаюсь установить тайм-аут соединения для 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 описывает connectionTimeout и этот пост описывает, как установить тайм-аут.


У кого-нибудь были подобные проблемы и разрешили?

спросил(а) 2015-03-13T13:59:00+03:00 5 лет, 6 месяцев назад
1
Решение
80

Вы должны использовать MongoClientOptions.builder().serverSelectionTimeout(500).build(), если хотите проверить подключение к серверу. другие свойства для установки в случае, если вы хотите их протестировать:

    ConnectTimeout
    socketTimeout
    heartbeatConnectTimeout
    heartbeatSocketTimeout

ответил(а) 2017-01-04T05:42:00+03:00 3 года, 8 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема