피드로 돌아가기
Building a Sub-Microsecond Cache for a Billion-User Mining Platform
Dev.toDev.to
Backend

Rust 기반 CacheeEngine 도입을 통한 Middleware 지연시간 250ms에서 Sub-microsecond 수준으로 단축

Building a Sub-Microsecond Cache for a Billion-User Mining Platform

H33.ai2026년 4월 16일1advanced

Context

Node.js Express 환경의 Middleware 스택에서 Redis 기반의 직렬 요청으로 인해 100-250ms의 지연시간 발생. Billion-user 규모의 트래픽을 처리하기에 부적합한 Middleware Tax 구조의 한계 직면.

Technical Solution

  • JS Middleware 스택을 Rust 기반 In-process 캐시 엔진인 CacheeEngine으로 대체하여 네트워크 홉 제거
  • Lock-free concurrent reads를 지원하는 DashMap 스토리지 채택을 통한 동시성 성능 최적화
  • 512 KiB 고정 메모리 기반의 Count-Min Sketch를 Admission Doorkeeper로 활용하여 일회성 데이터 진입 차단
  • W-TinyLFU 대비 구조가 단순한 CacheeLFU 알고리즘을 선택하여 직접적인 빈도 비교와 Periodic halving decay 구현
  • SWR(Stale-while-revalidate) 메커니즘 내장으로 데이터 최신성 유지와 응답 속도 동시 확보

Impact

  • Middleware 지연시간: 100-250ms → 5ms 미만으로 개선
  • Rate limit 처리 속도: 30-50ms → 100ns 미만으로 단축
  • Trust score hit 및 Swap quote stale: 각 1us 미만의 Sub-microsecond 성능 달성
  • 바이너리 크기 5.2MB의 경량 구조 구현

- 네트워크 홉으로 인한 Middleware Tax 발생 시 In-process 캐시 전환 검토 - 메모리 효율을 위해 Count-Min Sketch 기반의 Admission 제어 로직 적용 고려 - 고성능 동시성 처리가 필요한 경우 Lock-free 데이터 구조인 DashMap 활용 검토 - 캐시 교체 알고리즘 선택 시 서비스 특성에 맞는 Eviction 전략(LFU vs TinyLFU) 비교 분석

원문 읽기