TECH NOTES
기술노트
현장에서 검증된 개발 지식을 기록합니다.
343332313029282726252423
Backend
레이트 리미팅 알고리즘 — 토큰 버킷·슬라이딩 윈도우 구현과 분산 환경에서의 정확도
고정/슬라이딩 윈도우, 토큰·리키 버킷을 언제 쓰고 어떻게 구현하나. Redis Lua로 read-modify-write 경쟁을 없애 원자성을 지키고, 429·Retry-After를 제대로 내려주며, 분산 노드에서 정확도를 잃지 않는 실전 방법을 코드로 정리한다.
Backend
분산 락 제대로 쓰기 — Redis Redlock의 함정과 안전한 대안
단일 Redis SET NX PX부터 Redlock 논쟁(Kleppmann), 펜싱 토큰, ZooKeeper/etcd까지. 분산 락이 언제 안전하고 언제 데이터를 깨뜨리는지, 그리고 애초에 락이 필요 없는 경우를 실무 기준으로 정리한다.
Backend
HyperLogLog — 수억 개의 유니크를 12KB로 세는 법
수억 개의 유니크 방문자를 12KB로 추정하는 HyperLogLog. 앞자리 0 개수라는 직관부터 메모리·오차 맞교환, 병합(union)의 위력까지 실무 관점으로 풀었습니다.
Backend
캐시 스탬피드(Thundering Herd) — 인기 캐시 만료가 DB를 죽일 때
인기 캐시가 만료되는 순간 요청이 DB로 쏟아지는 캐시 스탬피드 현상. 뮤텍스 락, 확률적 조기 만료, stale-while-revalidate 세 가지 방어법을 비교합니다.
Database
Redis 캐시 무효화 전략과 흔한 함정
"캐시 무효화는 컴퓨터과학 2대 난제." TTL·쓰기 시 무효화·캐시 스탬피드·일관성 트레이드오프를 실무 기준으로.
Backend
API rate limiting, 어떻게 구현하나 (토큰 버킷)
남용·DoS·비용 폭증을 막는 rate limit. 고정 윈도우의 경계 문제와 토큰 버킷·슬라이딩 윈도우 비교, Redis 구현.
DB
Redis 8.0 vector search — RediSearch 통합 후 RAG 5배 빠른 이유
Redis 8.0이 vector + full-text 통합 native. RAG 파이프라인 pgvector→Redis 전환 6개월, 검색 5배.
Database
Redis 8 Vector Sets — pgvector·Qdrant와 어디서 갈리는가
Redis 8의 Vector Sets 자료구조와 pgvector·Qdrant 비교. 사용 사례별 결정 가이드와 실측 벤치마크.
Database
Redis 8 vs Dragonfly vs KeyDB — 2026 In-memory DB 비교
Redis 8의 라이센스 변경 이후 등장한 대안들 — Dragonfly (수직 확장 끝판), KeyDB (멀티 스레드), Valkey (오픈소스 fork). 워크로드별 선택.
Backend
API Rate Limiting 완벽 구현 — Token Bucket·Sliding Window·Redis 실전 코드
API Rate Limiting 구현의 4가지 대표 알고리즘과 실제 Redis 기반 구현 코드를 정리한다. Fixed Window·Sliding Window·Token Bucket·Leaky Bucket을 비교한다.
Database
Redis 8 실전 활용 — Streams·Vector Search·클러스터 운영 완벽 정리
Redis 8은 Streams, Vector Search, JSON이 코어로 통합됐다. 실무 패턴과 클러스터 운영 체크리스트를 정리한다.
Backend
Rate Limiting 구현 — Token Bucket과 Sliding Window
API Rate Limiting의 주요 알고리즘과 Redis를 활용한 분산 환경 구현 방법.