Lisio
@Lisio

Как заставить MongoClient (пакет mongodb из node.js) повторить попытку подключения к базе?

var http = require('http')
  , mongodb = require('mongodb');

var options = {
    {
        uri_decode_auth: true,
        numberOfRetries: 1000,
        db: {
            numberOfRetries: 1000,
            retryMiliSeconds: 5000,
            bufferMaxEntries: 0
        },
        server: {
            auto_reconnect: true,
            socketOptions: {
                connectTimeoutMS: 5000,
            },
            reconnectTries: 1000,
            reconnectInterval: 5000,
        }
};

mongodb.MongoClient.connect('mongodb://username:password@127.0.0.1:27017/dbname', options, function(err, db) {
    if (err) {
        console.log('failure');
        return;
    }
    console.log('success');
    http.createServer(function(request, response) {

    }).listen(80);
});


Если в момент запуска скрипта база данных не работает, то скрипт выводит failure и ничего больше не делает. Если поднять базу, то также никакой реакции. Если же база работает сразу при старте, то выводить success и корректно работает.
  • Вопрос задан
  • 390 просмотров
Пригласить эксперта
Ответы на вопрос 2
un1t
@un1t
Дак вы же сами указали
server: {
     auto_reconnect: false,


поэтому и не переподключается
Ответ написан
@dimonnwc3
auto_reconnect: false, может стоит для начала true поставить?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы