nodejsとmongoDBを使用していますが、接続に問題があります。
まあ、実際には「ウェイク」の問題です!それは完全にうまく接続します-超高速で、私は一般的に結果に満足しています。
私の問題:接続をしばらく使用しないと(時間枠が5分以上変化するため、しばらくの間)、停止しているように見えます。切断イベントが発生しません-ハングするだけです。
最終的に、エラーのような応答が返されます:[* .mongolab.comに接続できませんでした:*]-(* =マスクされた値)
アプリをすばやく再起動すると、接続が再び正常になります。時々、アプリを再起動しないと、更新して問題なく再接続できます。
これが「ウェイク」の問題だと思う理由です。
コードの大まかな概要:
私はコードを含めていません-私はそれが必要だとは思いません。動作します(接続ドロップアウトは別として)
注意事項:「接続」は1つだけです。閉じないでください。私は決して再開しません。
私はマングース、socketioを使用しています。
/* constants */
var mongoConnect = 'myworkingconnectionstring-includingDBname';
/* includes */
/* settings */
/* Schema */
var db = mongoose.connect(mongoConnect);
/* Socketio */
io.configure(function (){
io.set('authorization', function (handshakeData, callback) {
});
});
io.sockets.on('connection', function (socket) {
});//sockets
io.sockets.on('disconnect', function(socket) {
console.log('socket disconnection')
});
/* The Routing */
app.post('/login', function(req, res){
});
app.get('/invited', function(req, res){
});
app.get('/', function(req, res){
});
app.get('/logout', function(req, res){
});
app.get('/error', function(req, res){
});
server.listen(port);
console.log('Listening on port '+port);
db.connection.on('error', function(err) {
console.log("DB connection Error: "+err);
});
db.connection.on('open', function() {
console.log("DB connected");
});
db.connection.on('close', function(str) {
console.log("DB disconnected: "+str);
});
私はここでさまざまな構成を試しました。たとえば、常に開いたり閉じたりします。ただし、一般的なコンセンサスは、1つのオープンラッピングを使用する場合と同じように行うことです。??
接続のステータスをチェックし続ける接続テスターを試しました...これはすべて問題ないように見えますが、問題は引き続き発生します。
私は初日からこの問題を抱えています。私は常にMongoLabでMongoDBをホストしてきました。この問題はローカルホストではさらに悪化しているようです。しかし、私はまだAzureとnodejit.suで問題を抱えています。
それはどこでも起こります-それは私、MongoDB、またはmongolabでなければなりません。
ちなみに、私もphpドライバーで同様の経験をしました。(ただし、これがnodejs上にあることを確認するため)
誰かが「これは正常だ」と言ったとしても、助けがあれば素晴らしいでしょう。
前もって感謝します
ロブ