2016-03-30 5 views
0

Gibt es eine Möglichkeit, die Option keep-alive für die Verbindung mit DocumentDB mit dem NodeJS SDK (http://azure.github.io/azure-documentdb-node) anzugeben?Verbindung zu DocumentDB mit NodeJS mit Keep-Alive herstellen

+0

ich die Version bin mit 5.6.0 von NodeJS –

+0

Sie in erster Linie mit dem node.js Buchse Ablaufen betroffen sind, bevor sie eine Antwort von DocumentDB empfängt? Wenn dies der Fall ist, können Sie eine Zeitüberschreitung von 10 Sekunden angeben, um alle von mir ausgeführten DocumentDB-Abfragen abzudecken. Wenn nicht, warum sollte etwas anderes am Leben erhalten bleiben? Das node.js-SDK ist ein relativ dünner Wrapper um die DocumentDB-REST-API und ist statusfrei und asynchron. Wenn ich nicht falsch verstanden habe, bitte akzeptieren Sie meine Entschuldigung. –

+0

Ich benutze die DocumentDB mit StrawJS Framework. Das Problem ist nicht das Zeitlimit für die Antwort. Ich muss die Verbindung am Leben erhalten, da mein Code kontinuierlich ausgeführt werden muss und die Verbindung zu DocumentBDB jederzeit herstellen muss, wenn eine Anfrage an einen StrawJS-Knoten gesendet wird. –

Antwort

0

Sie müssen nicht am Leben bleiben, um StrawJS zu verwenden, was gut ist, weil DocumentDB nichts dergleichen bietet. Eher können Sie regelmäßig abfragen. Anpassen des Beispiels auf der StrawJS Website:

var straw = require('straw') 
module.exports = straw.node({ 
    timer: null, 
    opts: {interval: 1000}, // Set your polling interval here 
    initialize: function(opts, done){ 
    this.opts.interval = opts && opts.interval || 1000; 
    done(); 
    }, 
    start: function(done) { 
    this.timer = setInterval(this.ping.bind(this), this.opts.interval); 
    done(false); 
    }, 
    stop: function(done) { 
    clearInterval(this.timer); 
    done(false); 
    }, 
    data: function() { 
    var queryIterator = client.queryDocuments(<your query config>); 
    queryIterator.toArray(function(err, response) { 
     manipulatedResponse = <some manipulation>(response); 
     this.output({'data': manipulatedResponse}); 
    }) 
    } 
}); 
+0

Interessante Problemumgehung. Ich werde es jetzt testen –