redis断线重连

互联网 20-4-24

应用在Redis重启、网络闪断并恢复正常后,应用必须能够自恢复,下面以Java语言的jedis客户端为例说明:

1、作为发布者

Jedis对象不能作为单例,网络闪断后该Jedis对象无法自恢复。应该每次发布消息时,从JedisPool中取Jedis对象,再调用set方法。

2、作为订阅者

当网络闪断后psubscribe()方法不再阻塞并抛出异常,所以可以使用while循环,在循环内部处理异常,代码如下:

while(true){              Jedis redis = this.jedisPool.getResource();              try{                  redis.psubscribe(this, channelArray);              }catch(JedisConnectionException e){                  logger.warn("Exception :", e);                  logger.warn("Exit redis psubscribe, retry after 1 second");              }catch(Exception e){                  logger.error("Exception:", e);              }              try{                  Thread.sleep(1000);              }catch(Exception unused){              }              try{                  if(redis != null){                      redis.close();                  }              }catch(Exception unused){              }          }

更多redis知识请关注redis入门教程栏目。

以上就是redis断线重连的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
标签: redis
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:通过redis实现服务器崩溃宕机的数据恢复

相关资讯