본문으로 건너뛰기

Redis·Valkey·Dragonfly를 지원하는 macOS 클라이언트 Keel

One native macOS client for Redis, Valkey and Dragonfly: Smooth at 10M keys

bearstouch.com

핵심 요약

  1. Keel은 Redis 6.0~8.x와 Valkey 7.2~9.x를 완전히 지원하고, Dragonfly 1.x에서는 공통 명령 집합을 지원하는 오픈소스 macOS 클라이언트다.
  2. 브라우저는 SCAN만 사용하고 값을 페이지 단위로 불러온다. 유휴 탭은 요청을 보내지 않으며, 대량 삭제는 기본적으로 초당 10개 배치로 제한된다.
  3. Redis Cluster에서는 연결한 노드만 탐색하며, 노드 전체를 슬롯 기준으로 탐색하는 기능은 아직 제공되지 않는다. 텔레메트리는 없고 비밀번호는 macOS Keychain에 보관된다.

도입

Keel은 Redis 프로토콜 기반 서버를 다루는 macOS 클라이언트다. Redis 6.0~8.x와 Valkey 7.2~9.x를 완전히 지원하고, Dragonfly 1.x에서는 공통 명령 집합을 지원한다. Redis 호환 서버도 연결할 수 있지만, Redis 6.0보다 오래된 서버는 거부한다. MIT 라이선스로 공개되어 있으며 코드와 이슈 트래커, 릴리스는 GitHub에서 제공된다.

상세 요약

지원 서버

Keel은 Redis 프로토콜 기반 서버를 탐색하고 편집하는 macOS 클라이언트다. 지원 범위는 서버 종류에 따라 다르다.

  • Redis: 6.0~8.x를 완전히 지원한다. 6.0보다 오래된 버전은 연결을 거부한다.
  • Valkey: 7.2~9.x를 완전히 지원한다. 브라우저, 각 편집기, 콘솔, Info 화면이 Valkey 통합 테스트를 통과해야 릴리스를 진행한다.
  • Dragonfly: 1.x의 공통 명령 집합을 지원한다. 탐색, 편집, 콘솔, Info 화면은 사용할 수 있지만 일부 OBJECT, MEMORY, DEBUG 하위 명령의 동작은 다르다. Keel은 해당 명령을 확인하고 키 인코딩 같은 세부 정보가 지원되지 않으면 사용할 수 없음으로 표시한다.
  • 기타 Redis 호환 서버: Redis 프로토콜을 지원하면 ‘Redis-compatible’ 서버로 연결한다.

탐색과 서버 부하

브라우저는 키 탐색에 SCAN만 사용하며 KEYS는 호출하지 않는다. 값은 페이지 단위로 불러오고, 메모리 크기는 사용자가 요청할 때만 읽는다. 유휴 탭에서는 요청을 보내지 않는다. 대량 삭제는 기본 설정에서 초당 10개 배치로 제한된다.

Redis Cluster에 연결하면 Keel은 클러스터 모드를 감지하고 연결된 노드의 데이터를 탐색한다. 이때 클러스터 모드임을 알리는 배너를 표시한다. 마스터 노드 전체를 슬롯 기준으로 탐색하는 기능은 아직 제공되지 않으며, 향후 계획으로 제시되어 있다.

개인정보와 배포

Keel은 텔레메트리를 수집하지 않는다. 값, 키 이름, 콘솔 출력은 기록하지 않으며 비밀번호는 macOS Keychain에 보관한다. 앱은 MIT 라이선스 오픈소스이며, 코드와 이슈 트래커, 릴리스는 GitHub에서 확인할 수 있다.

결론

Keel은 탐색과 편집, 콘솔, Info 화면을 제공하며 서버 부하를 줄이기 위한 동작 제한을 둔다. 다만 Redis Cluster의 슬롯을 따라 여러 마스터를 탐색하는 기능은 아직 없고, Dragonfly에서는 일부 OBJECT·MEMORY·DEBUG 하위 명령의 세부 정보가 제공되지 않을 수 있다. 텔레메트리를 수집하지 않으며 값과 키 이름, 콘솔 출력은 기록하지 않고 비밀번호는 macOS Keychain에 저장한다.