애플리케이션은 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 연결이 끊어졌다가 다시 연결되었습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!