Как восстановить соединение Redis через некоторое время? - PullRequest
0 голосов
/ 22 октября 2019

Если подключение Redis не работает, то как восстановить подключение Redis через некоторое время. Я хочу использовать Redis retry_strategy.

const redisClient =  redis.createClient({
host: redisConfig.host, 
port: redisConfig.port, 
retry_strategy: (options) => {
  if (options.error) {
      const errorMsg = options.error;
      let resMsg = new responseMsg(rm.i18nConfig.defaultLocale, "handler", {});
      resMsg.errorRes(errorMsg, null, 'Redis Error: '+errorMsg, (err, data)=> {});
  }    
}

})

Следующий код повторно подключает Redis через заданное время в качестве прохода в ответ.

const redisClient =  redis.createClient({
host: redisConfig.host, 
port: redisConfig.port, 
retry_strategy: (options) => {
  if (options.error) {
      const errorMsg = options.error;
      let resMsg = new responseMsg(rm.i18nConfig.defaultLocale, "handler", {});
      resMsg.errorRes(errorMsg, null, 'Redis Error: '+errorMsg, (err, data)=> {});
  } 
return 100000;
}

})

Примечание: - 100000 - это миллисекунды.

Но основная проблема заключается в том, что во время этого процесса переподключения я не могу вызвать какой-либо API, но после успешного соединения я могу использовать API.

Примечание: - Если я удаляю возврат, он не будет пытаться повторно подключить Redis, но я могу выполнить вызов API

Требование: - Я хочу вызвать API во время подключения Redis retry_strategyобрабатывать, когда я передаю возвращаемое значение в обратном вызове

...