Redis 캐시 스탬피드 방지: 뮤텍스 락·조기 재계산·확률적 만료 실전
어느 인기 상품 페이지의 캐시 키가 TTL 만료로 사라지는 순간, 그 키를 조회하던 수천 개의 요청이 동시에 캐시 미스를 만난다. 각 요청은 저마다 “내가 캐시를 다시…
10 min read
어느 인기 상품 페이지의 캐시 키가 TTL 만료로 사라지는 순간, 그 키를 조회하던 수천 개의 요청이 동시에 캐시 미스를 만난다. 각 요청은 저마다 “내가 캐시를 다시…
디스크 사용량이 이유 없이 계속 늘어난다. 데이터는 몇 달째 비슷한 규모인데 테이블 물리 크기만 부풀어 오르고, 어제까지 멀쩡하던 조회 쿼리가 점점 느려진다. 로그를 뒤져 보면 autovacuum…
클러스터를 운영하다 보면 파드가 엉뚱한 곳에 뜨는 순간이 반드시 온다. GPU 노드에 CPU만 쓰는 배치 파드가 스케줄돼 비싼 자원을 놀리거나, 레플리카 3개가 하필 같은 노드에 몰려…
사무실 유선망에서는 멀쩡하던 서비스가 지하철이나 엘리베이터에서 유독 버벅인다. 원인을 파고들면 HTTP/2도 완벽하지 않다는 사실에 부딪힌다. HTTP/2는 하나의 TCP 연결 위에 여러 요청을 다중화(multiplexing)해 HTTP/1.1의 병목을 상당…
쿠버네티스 클러스터를 운영하다 보면 어느 날 갑자기 파드가 OOMKilled 상태로 재시작되거나, CPU 사용률은 낮은데 응답 지연이 급증하는 현상을 마주하게 됩니다. 대부분의 경우 원인은 resources.requests와 resources.limits 설정의…