Simple Queue Service
[4편] Warm Storage를 위해 RocksDB를 선택한 이유
“Redis Disk라… 구현을 시작해볼까?”
지난편에서 Hot/Warm/Cold 스토리지 계층화를 설계하면서, Warm Storage …
메시지 큐 시스템 직접 구현하기
“내 손으로 만드는 메시지 큐 시스템”
메시지 큐를 직접 구현하며 내부 원리를 공부하는 프로젝트입니다.
🔍 기술적 호기심
📚 학습 목표
메시지 큐
3-Tier 스토리지 계층화
백엔드 (Kotlin 생태계)
Kotlin # 멀티플랫폼 언어의 장점 활용
Spring WebFlux # 반응형 프로그래밍 & 높은 동시성
Spring Data Redis # Redis 연동 및 트랜잭션 관리
스토리지 (Redis 활용)
Redis # 메모리 DB, 퍼시스턴스, 클러스터링
Local File System # 콜드 스토리지 (GZIP 압축)
프론트엔드 (관리 도구)
React # Admin 대시보드
TypeScript # 타입 안정성
DevOps & 모니터링 (예정)
Docker & Docker Compose # 컨테이너화
Micrometer # 메트릭 수집
Prometheus # 시계열 데이터베이스 (예정)
Grafana # 모니터링 대시보드 (예정)
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Producer │ │ Queue Service │ │ Consumer │
│ Application │───▶│ (Spring Boot) │◀───│ Application │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│
▼
┌─────────────────────────┐
│ Unified Storage │
│ Management Layer │
│ (자동 계층화 엔진) │
└─────────────────────────┘
│
┌───────────────┼───────────────┐
▼ ▼ ▼
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ Hot Storage │ │ Warm Storage │ │ Cold Storage │
│ (Redis Memory) │ │ (Redis Disk) │ │ (File System) │
│ < 1ms access │ │ 1-10ms access │ │100-1000ms acc. │
│ 1 hour TTL │ │ 24 hour TTL │ │ 14 days TTL │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│ │ │
└─────── Auto Migration & Smart Promotion ───────┘
프로젝트 개발 과정에서 배운 내용을 기록하고 있습니다.