Skip to main content Link Menu Expand (external link) Document Search Copy Copied

이번에 redis 단일 노드만 쓰다가 cluster 로 구축해보면서 redis 버전을 정해야했습니다. 그래서 버전별 어떤 기능이 추가되었고 변경되었는지 정리했더니 진짜 유용해서 작성합니다.

  • Redis 8.2 에서 XACKDEL 명령이 추가되었다고 합니다. 이거 RTT 2번을 1번으로 줄여주는 옵션인데, 원래는 XACK + XDEL 을 따로따로 호출해야 했습니다. 그런데 XACKDEL 로 한번에 처리할 수 있게 되었습니다! 공식적으로 지원해준다는게 너무 좋아요. 전 lua 스크립트로 직접 만들어서 썼었거든요ㅜㅜ.
  • 이번년도 11월 업데이트된 Redis 8.4 에서 XREADGROUP 에 실패메세지 재처리기능이 추가되었습니다! 원래 저는 XPENDING 으로 마지막 메세지 소비시간으로부터 일정이상 시간이 지난 애들을 XCLAIM 해서 재처리했었는데, 이제는 XREADGROUP 에서 바로 옵션으로 처리할 수 있게 되었습니다. 확실히 기술이 발전하는게 느껴지네요…

제가 했던 고민들이 완전 똑같이 Redis 팀에서도 있었고 즉시 반영되니 정말 신기한 기분입니다. 그래서 이번엔 버전 8.4 로 올려서 바로 적용하려고 합니다.

이후에 변경될 기능을 또 조심스럽게 예측해보자면, 샤딩기능을 제공하지 않을까 싶어요. 현재는 단일 stream 만 제공하고 있어서 메세지 소비순서 중요한 서비스를 서빙할려면 샤딩을 직접 구현해야하는데, 이걸 자동으로 제공해주면 정말 좋을 것 같습니다.

reference