帆サーバー:6.10.2 Sails.js、MongoDb:接続しようとするとタイムアウトします。接続プールを使用できますか?
のMongoDBサーバーNode.jsの
- のWindows 10の64ビット
- Sails.js 1.0.0-36
- :
- CentOS 7 on Virtualbox、ホストネットワーキングのみ
- Mongodb 3.4.4、すべてのインターフェイスをリッスンし、認証は設定されていません
セイルを正常に持ち上げ、データストアを接続して問題なく使用できます。
しかし、このテストはタイムアウトになります:私は、データストアに使用される正確な同じサーバの情報を使用しています
let mongo = require('mongodb'); let uri = 'mongodb://' + process.env.MONGO_SERVER + ':' + process.env.MONGO_PORT + '/sails'; mongo.MongoClient.connect(uri, function(err, db) { if(err){ return res.serverError(err); } return res.json("open"); }); { MongoError: failed to connect to server [192.168.99.2:27027] on first connect [MongoError: connect ETIMEDOUT 192.168.99.2:27027] at Pool.<anonymous> (....\node_modules\mongodb-core\lib\topologies\server.js:329:35) at emitOne (events.js:96:13) at Pool.emit (events.js:188:7) at Connection.<anonymous> (....\node_modules\mongodb-core\lib\connection\pool.js:280:12) at Connection.g (events.js:291:16) at emitTwo (events.js:106:13) at Connection.emit (events.js:191:7) at Socket.<anonymous> (....\node_modules\mongodb-core\lib\connection\connection.js:187:49) at Socket.g (events.js:291:16) at emitOne (events.js:96:13) at Socket.emit (events.js:188:7) at emitErrorNT (net.js:1281:8) at _combinedTickCallback (internal/process/next_tick.js:80:11) at process._tickDomainCallback (internal/process/next_tick.js:128:9) name: 'MongoError', message: 'failed to connect to server [192.168.99.2:27027] on first connect [MongoError: connect ETIMEDOUT 192.168.99.2:27027]' }
。
ここで何が間違っていますか?
重要:新しい接続を作成する代わりに、グローバルSails接続プールを使用することは可能ですか?どうやって?私はドキュメントを検索しましたが、特定の参照を見つけることができません。
'err'は間違いなく' null'ではありません---これはエラーです。別の方法でテストする必要はありません。ありがとうございます。 – noderman