---
title: "ForgeKV — Rust로 만든 멀티코어 Redis 대체제"
published: 2026-03-22T23:24:53.000Z
canonical: https://jeff.news/article/896
---
# ForgeKV — Rust로 만든 멀티코어 Redis 대체제

Rust로 만든 Redis 드롭인 대체제. 64-샤드 잠금 아키텍처로 멀티코어 스케일링 지원. 2코어 환경에서 Redis 7 대비 41% 빠른 SET 처리량(158K ops/s). 고동시성에서는 약점 있음. Source-available 라이선스.

Redis의 고질적 한계인 싱글스레드 구조를 Rust로 해결하겠다는 프로젝트임. Redis 프로토콜(RESP2)을 완전히 지원해서 기존 Redis 클라이언트를 그대로 쓸 수 있는 드롭인 대체제를 표방함.

## 아키텍처: 64-샤드 잠금 구조

- 핵심 설계는 **64개 샤드 잠금 아키텍처**임. 각 샤드가 자체 WAL(Write-Ahead Log), memtable, RwLock을 가짐
- 동시 쓰기가 같은 샤드에 해시되지 않는 한 서로 블로킹하지 않음 → 코어 수에 비례해서 처리량이 올라감
- Redis 키를 인식해서 샤딩하기 때문에, 같은 Redis 키의 메타데이터와 실제 데이터가 항상 같은 샤드에 들어감
- `put2` 명령으로 SET 시 메타+데이터를 한 번의 WAL 잠금으로 처리해서 라운드트립을 줄임

## 벤치마크 결과

memtier_benchmark 기준, pipeline=16, 64바이트 값 기준 SET 처리량:

- **스위트 스팟 (t=2, c=20, 40개 연결)**: ForgeKV **158K ops/s** vs Redis 7 112K vs Dragonfly 45K
  - Redis 7 대비 **41% 빠름**, Dragonfly 대비 **3.5배**
- **레이턴시도 우수**: 같은 조건에서 ForgeKV 0.367ms vs Redis 0.546ms vs Dragonfly 1.273ms
- 싱글스레드(t=1)에선 Redis가 약간 앞서는데, 코어를 추가하면 ForgeKV가 올라가고 Redis는 정체되는 패턴

**약점도 명확함:**
- 고동시성 환경 **(t=4, c=50, 200개 연결)**에서는 ForgeKV가 59K로 떨어지고 Redis가 82K, Dragonfly가 95K로 역전됨
- 이건 WAL 그룹 커밋 최적화로 개선 예정이라고 함

## Redis 호환성

지원하는 명령어 범위가 상당히 넓음:
- Strings, Keys, Hashes, Lists, Sets, Sorted Sets 등 기본 자료구조 전부
- HyperLogLog, Geo, Bitmaps, Pub/Sub, Streams까지 지원
- 트랜잭션(MULTI/EXEC), 스크립팅(EVAL/EVALSHA)도 됨
- JSON, Bloom Filter 모듈과 RedisSearch 스텁까지 포함

블로킹 커맨드(BLPOP, BRPOP 등)는 Tokio broadcast 채널로 구현함.

## 라이선스 주의

- **Source-available** 라이선스임. 완전한 오픈소스가 아님
- 평가 및 비상업적 사용은 무료, **상업적 사용이나 SaaS 형태 재배포는 별도 상업 라이선스 필요**
- forgekv.com에서 라이선스 문의 가능

## 정리

2코어 정도의 환경에서 Redis를 대체할 만한 성능을 보여주고, 호환성도 꽤 탄탄함. 다만 고동시성 환경의 성능 하락과 source-available 라이선스는 도입 전에 반드시 따져봐야 할 부분임. "Redis가 싱글스레드라서 답답했던" 유스케이스가 있다면 한번 테스트해볼 만함.

## 핵심 포인트

- 64-샤드 잠금 아키텍처(각 샤드별 WAL, memtable, RwLock)
- t=2 c=20 기준 158K SET/s — Redis 7 대비 41% 빠름, Dragonfly 대비 3.5배
- 고동시성(200 연결)에서는 Redis에 역전당하는 약점
- RESP2 완전 지원, source-available 라이선스(상업용은 별도 라이선스 필요)

## 인사이트

Redis의 싱글스레드 한계를 정면으로 공략하는 접근. 2-4코어 환경의 성능은 인상적이나, 고동시성 약점과 비오픈소스 라이선스가 프로덕션 도입 시 주요 검토 포인트.
