위키득계정 ↗
기술

Miniredis

Miniredis기술
분야
Redis 테스트 서버
구현
Go 메모리 서버
연결
TCP와 직접 접근 API
지원 범위
Redis 기능의 일부
Miniredis는 Go 테스트 프로세스 안에서 Redis 동작의 일부를 제공하는 메모리 서버다. 실제 TCP 인터페이스와 직접 접근용 API를 제공하며 외부 Redis 실행 파일 없이 검사를 구성한다.

클라이언트 경로를 검사하기

Redis를 사용하는 코드의 검사를 위해 별도 서버를 준비하는 대신 Miniredis 인스턴스를 시작할 수 있다. 클라이언트는 연결 주소로 요청하고 테스트는 서버 값을 직접 확인할 수도 있다. 객체 메서드만 대체하는 대역과 달리 프로토콜 경로를 이용하지만 실제 Redis의 모든 특성을 재현하는 것은 아니다.

시간과 만료 제어

기본 설정에서는 TTL이 실제 시간 흐름에 따라 자동으로 줄지 않는다. 시간을 앞으로 진행시키는 API로 만료를 확인할 수 있다. 별도로 시간 기반 감소를 켜는 구성도 있어 버전과 설정을 구분해야 한다. 현재 시각을 정하는 기능과 TTL을 진행시키는 기능의 효과가 항상 같지는 않으므로 의도한 시간 모델을 선택한다.

지원 명령과 운영 차이

여러 자료형과 트랜잭션, 스크립트 관련 명령을 지원하지만 일부는 제한되거나 구현하지 않는다. 명령 이름이 있다고 전체 운영 기능이 동일하다고 가정하지 않는다. 영속화와 복제, 분산 환경의 동작 등은 실제 서버로 별도 확인해야 한다. Miniredis는 빠른 개발 검사를 돕는 도구이며 운영 환경 검증을 대체하는 Redis 배포판은 아니다.

관련 문서

Go-sqlmock / GoMock / Testcontainers 자바 / Testify