簡體   English   中英

如何重新連接redis連接?

[英]How to reconnect redis connection?

我有一個簡單的例子:

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();

重啟redis服務器后如何重新連接redis連接?

Redis客戶端自動重新連接。 只需確保您處理來自客戶端的"error"事件。 根據例子

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

否則, 此代碼是流程開始的位置。

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");

接下來, .connection_gone()方法在客戶端上運行。

請注意,您也可以收聽"reconnecting"事件,以便在發生這種情況時收到通知。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM