2012-06-04 7 views
5

Ich habe einfaches Beispiel:Wie Redis-Verbindung erneut zu verbinden?

var redis = require('redis'), 
client = redis.createClient(); 

var test = function() { 
    client.brpop('log', 0, function(err, reply) { 
     if (err != null) { 
      console.log(err); 
     } else { 
      .... parse log string .... 
     } 
     test(); 
    }); 
} 

test(); 

Wie redis Verbindung nach einem Neustart redis Server verbinden?

Antwort

12

Der Redis-Client stellt die Verbindung automatisch wieder her. Stellen Sie nur sicher, dass Sie das Ereignis "error" vom Client behandeln. Wie pro the example:

var redis = require('redis'); 
client = redis.createClient(); 
client.on('error', function(err){ 
    console.error('Redis error:', err); 
}); 

Ansonsten this code ist, wo beginnt der Prozess.

this.emit("error", new Error(message)); 
// "error" events get turned into exceptions if they aren't listened for. If the user handled this error 
// then we should try to reconnect. 
this.connection_gone("error"); 

Als nächstes wird die .connection_gone() Verfahren läuft auf dem Client.

Beachten Sie, dass Sie auch ein Ereignis "reconnecting" hören können, um benachrichtigt zu werden, wenn dies geschieht.

Verwandte Themen