Showing posts with the label Thundering Herd

Redis 캐시 스탬피드: 단순 TTL이 당신의 DB를 죽이는 이유와 PER 알고리즘

이커머스 타임 세일 프로젝트를 진행하던 중, 오전 10시 정각마다 DB CPU가 100%를 치며 서버가 응답 불능(Hang) 상태 에 빠지는 현상을 겪었습니다. 로그를 분석해보니 특정 인기 상품의 캐시 만료 시점(TTL Expiry)과 정확히 일치했습니다. 수천 개의 요청이 동시에 만료된 키를 조회하려 했고, 캐시가 비어있음을 확인한 모든 요청이 동시…
Redis 캐시 스탬피드: 단순 TTL이 당신의 DB를 죽이는 이유와 PER 알고리즘

Redis Latency Spikes? Fixing the Thundering Herd with Probabilistic Early Expiration

Your dashboard looks stable. Throughput is steady at 5,000 RPS. Then, precisely at 12:00 UTC, the database CPU hits 100%, request latency jumps from 20ms to 3 seconds, and timeouts flood the logs. …
Redis Latency Spikes? Fixing the Thundering Herd with Probabilistic Early Expiration

Redis Cache Stampede対策:PERアルゴリズムでThundering Herdを完全回避する実装

深夜2時、トラフィックのピークでもないのに突然データベースのCPU使用率が100%に張り付き、APIのレイテンシが20ミリ秒から3秒へ跳ね上がる。ログを確認すると、特定のホットなキャッシュキー(例えば `homepage_config` や `top_products`)の有効期限(TTL)が切れた瞬間に、数百のリクエストが同時にDBへ再計算を要求していました。これが典型的な Redis …
Redis Cache Stampede対策:PERアルゴリズムでThundering Herdを完全回避する実装

Redis Cache Stampede: Implementando Probabilistic Early Expiration en Producción

Todo el sistema funcionaba con latencias sub-milisegundo hasta que, a las 09:00 AM en punto, la base de datos principal colapsó con un uso de CPU del 100%. No fue un ataque DDoS, ni un bug en el có…
Redis Cache Stampede: Implementando Probabilistic Early Expiration en Producción
OlderHomeNewest