2016-12-30 2 views
1
events.js:141 
     throw er; // Unhandled 'error' event 
MongoError: connection 0 to localhost:27017 timed out 
at Function.MongoError.create (/home/ubuntu/scripts/node_modules/mongodb-core/lib/error.js:29:11) 
    at Socket.<anonymous> (/home/ubuntu/scripts/node_modules/mongodb-core/lib/connection/connection.js:184:20) 
    at Socket.g (events.js:260:16) 
    at emitNone (events.js:67:13) 
    at Socket.emit (events.js:166:7) 
    at Socket._onTimeout (net.js:318:8) 
    at _runOnTimeout (timers.js:524:11) 
    at _makeTimerTimeout (timers.js:515:3) 
    at Timer.unrefTimeout (timers.js:584:5) 

Ну нет ошибок во время соединения, но при попытке сохранить некоторые модели/коллекцию он работает некоторое время, а затем он выдает эту ошибку. BTW У меня также есть другой процесс узла, подключенный к одному серверу mongodb. Любая помощь высоко ценится.MongoError: подключение 0 до локального хоста: 27017 истекло

+0

Добавить подробности о event.js файл –

+0

Я думаю, что это nodejs построен в events.js (EventEmitter класса). Я не знаю, где это. – Prataksha

+0

следуйте этому http://stackoverflow.com/questions/8904991/mongodb-cant-connect-to-localhost-but-can-connect-to-localhosts-ip-address –

ответ

3
var mongoose = require('mongoose'); 
var option = { 
    server: { 
     socketOptions: { 
      keepAlive: 300000, 
      connectTimeoutMS: 30000 
     } 
    }, 
    replset: { 
     socketOptions: { 
      keepAlive: 300000, 
      connectTimeoutMS: 30000 
     } 
    } 
}; 

var mongoURI = process.env.MONGODB_URI; 
mongoose.connect(mongoURI, option).then(function(){ 
    //connected successfully 
}, function(err) { 
    //err handle 
}); 
3

Ваш запрос занимает много времени. И сам манго имеет установленный по умолчанию тайм-аут. Поэтому время истекает, если запрос занимает больше времени, чем время ожидания.

+0

Хорошо, спасибо за вход. – Prataksha

1

вы должны использовать эту конфиги на подключение к: Keepalive: 300000, connectTimeoutMS: 30000

+0

Как мне это сделать с помощью драйвера nodejs? MongoClient.connect ("MongoDB: // локальный: 27017/articledb", { Keepalive: 30000, connectTimeoutMS: 30000, }, функция (ERR, дБ) {}) – harryfeng

+0

@harrywilson см https: // суть .github.com/mongolab-орг/9959376 – sabrehagen

Смежные вопросы