태그: Redis
13편
-
API Rate Limiting 설계: 5가지 알고리즘 비교, Redis 분산 제한, 429·Retry-After
API Rate Limiting을 언어 무관으로 정리한 가이드. Fixed Window·Token Bucket 등 알고리즘 5종 비교, Redis 분산 제한, Nginx·미들웨어 적용, 429·Retry-After 규약까지 다룹니다.
-
Valkey: Redis 라이선스 변경 후 나온 오픈소스 포크, 호환성, Redis에서 옮기는 방법
Redis 라이선스 변경 이후 Linux Foundation 주도로 나온 포크 Valkey가 Redis와 어디까지 호환되는지 짚고, 설치와 클라이언트 연결, 센티넬·클러스터 구성, 인플레이스·블루그린·ElastiCache 교체 방식의 마이그레이션, 모니터링과 성능 튜닝을 다룹니다.
-
Redis로 캐싱과 세션 관리: 데이터 타입, 캐싱 전략, Pub/Sub, 트랜잭션, API 응답 캐싱
String·Hash·List·Set·Sorted Set을 Node.js 클라이언트로 다루고 Cache-Aside와 캐시 무효화, Pub/Sub, MULTI/EXEC 트랜잭션, API 응답 캐싱과 리더보드를 구현합니다. Pipeline, INCR 레이트 리밋, maxmemory-policy도 설명합니다.
-
Upstash Redis로 서버리스 캐시·레이트 리밋: REST vs TCP, Vercel·Workers 통합, QStash
Upstash Redis로 서버리스·엣지에서 캐시·레이트 리밋·메시지 큐를 구축하는 방법. REST·TCP, Vercel·Workers, QStash, 가격·한도까지 실무 정리. Upstash Redis는 서버리스 함수, 엣지 런타임, 정적 배포 환경에서도 최소한의 연결 관리로 Redis 기능을 쓰기 좋게 설계된 관리형 서비스입니다.
-
RabbitMQ·Redis 큐 vs Kafka vs NATS: 메시징 시스템별 철학과 선택 기준
RabbitMQ·Redis 큐, Kafka, NATS가 메시지를 다루는 방식의 차이를 비교하고, ack 전에 컨슈머가 죽거나 offset 커밋 순서가 틀려 메시지가 중복·유실되는 상황을 at-least-once 전달과 멱등 처리로 막는 방법을 Python 예제로 설명합니다.
-
Redis·ELK·Prometheus·Grafana·Jaeger로 서비스 운영 스택 구성하기
Redis 캐싱, ELK 로그 수집과 Kibana 분석, Prometheus 메트릭 타입과 PromQL·알림 규칙, Grafana 대시보드, OpenTelemetry 기반 Jaeger 분산 추적의 역할 분담과 Docker Compose로 한 번에 띄우는 예제를 다룹니다.
-
C++ Rate Limiter 구현: 토큰 버킷 vs 슬라이딩 윈도우 vs 고정 윈도우, Redis 분산 제한
C++로 API Rate Limiter를 구현하는 방법. 토큰 버킷(버스트 허용), 슬라이딩 윈도우(정확성), 고정 윈도우 알고리즘 비교, 스레드 안전한 키별 제한과 메모리 정리, Redis Lua 스크립트를 이용한 분산 제한을 다룹니다.
-
Docker Compose로 Node API·PostgreSQL·Redis 한 번에 띄우기
Node.js API, PostgreSQL, Redis를 docker-compose.yml 하나로 정의하고 .env 관리, /health 헬스체크와 depends_on 조건, 볼륨, 재시작 정책, 리소스 제한, 프로파일, 마이그레이션 실행 시점을 실무 템플릿으로 설명합니다.
-
Redis 캐싱 전략 패턴 5가지 | Cache-Aside부터 Refresh-ahead까지
Cache-Aside, Read-Through, Write-Through, Write-Behind, Refresh-ahead 캐싱 패턴의 지연과 일관성 차이를 비교하고, TTL과 무효화, 캐시 스탬피드 방지, RDB·AOF 영속성과 LRU·LFU 축출 정책을 Node.js 예제로 설명합니다.
-
C++에서 Redis 고급 기능 쓰기: Pub/Sub, 파이프라인 RTT 절감, Lua 스크립트, 트랜잭션, 클러스터
C++에서 Redis 고급 기능 활용. Pub/Sub 실시간 알림, 파이프라인으로 RTT 줄이기, Lua 원자적 스크립팅, MULTI/EXEC 트랜잭션, 클러스터 사용법과 자주 나는 에러, 성능 팁을 다룹니다.
-
C++ 애플리케이션 캐싱: hiredis로 Redis 연동, Cache-Aside·Write-Through, 무효화와 만료
hiredis로 Redis에 붙는 RAII 래퍼를 만들고 Cache-Aside·Write-Through·Write-Behind를 C++ 코드로 비교합니다. 캐시 스탬피드 방지, 분산 락으로 재고 차감하기, 캐시와 DB 불일치, maxmemory OOM과 WRONGTYPE 에러 대응까지 짚습니다.
-
C++에서 Redis 쓰기: hiredis·redis-plus-plus, 파이프라인, 분산 락, Lua 스크립트
C용 hiredis와 모던 C++용 redis-plus-plus로 Redis에 연결하는 방법부터 Cache-Aside 캐싱, SET NX EX와 Lua 스크립트로 만드는 분산 락, 파이프라인으로 왕복 횟수 줄이기, Pub/Sub와 커넥션 풀 설정까지 예제로 정리합니다.
-
C++로 Redis 클론 만들기: Asio 이벤트 루프, 프로토콜 파싱, GET/SET 저장소
Boost.Asio로 Acceptor와 세션을 만들고 간단한 텍스트 프로토콜을 파싱해 GET·SET·DEL·KEYS를 처리하는 최소 Redis 클론을 구현합니다. telnet·nc로 테스트하는 법과 redis-cli를 쓰려면 필요한 RESP 파싱, bad_weak_ptr, 쓰기 버퍼 수명, 멀티스레드 map 접근 문제도 다룹니다.