>  기사  >  데이터 베이스  >  Redis 눈사태란 무엇입니까?

Redis 눈사태란 무엇입니까?

hzc
hzc원래의
2020-06-28 15:37:286255검색

redis 캐시 눈사태에 대한 영어 설명은 running bison입니다. 이는 캐시 계층이 충돌한 후 동시 트래픽이 많은 양의 백엔드 스토리지를 사용하여 질주하는 들소와 같을 것임을 의미합니다. 전반적인 서비스를 제공할 수 없으므로 모든 요청이 스토리지 계층에 도달하게 되고 스토리지 계층에 대한 호출 수가 급격히 증가하여 스토리지 계층도 중단됩니다.

Redis 눈사태란 무엇입니까?

1. 캐시 레이어는 많은 양의 요청을 전달하기 때문에 스토리지 레이어를 효과적으로 보호합니다. 그러나 어떤 이유로 캐시가 전체적으로 서비스를 제공할 수 없는 경우에는 모든 요청이 스토리지 계층에 도달하고 스토리지 계층에 대한 호출 수가 급격히 증가하여 스토리지 계층도 중단됩니다. 캐시 눈사태에 대한 영어 설명은 running bison입니다. 이는 캐시 계층이 충돌한 후 동시 트래픽이 많은 양의 백엔드 스토리지를 갖춘 질주하는 들소와 같을 것임을 의미합니다.

이 문제가 발생하는 시나리오는 캐시 서버를 다시 시작하거나 일정 기간 동안 많은 양의 캐시가 집중되어 장애가 발생하면 대량의 데이터가 DB에 직접 액세스하게 되는 경우입니다. DB에 많은 압박이 가해졌습니다.

Redis 눈사태란 무엇입니까?2. 솔루션

(1) Redis 클러스터와 DB 클러스터의 고가용성을 설정하면 Redis가 다운되면 즉시 다른 머신으로 교체할 수 있습니다. 이렇게 하면 일부 위험을 예방할 수 있습니다.

(2) 뮤텍스 잠금 사용

캐시가 만료된 후 잠금 또는 대기열을 통해 데이터베이스를 읽고 쓰는 스레드 수를 제어합니다. 예를 들어, 하나의 스레드만 데이터를 쿼리하고 특정 키에 대한 캐시를 쓸 수 있으며 다른 스레드는 대기합니다. 독립형 머신인 경우 동기화 또는 잠금을 사용하여 해결할 수 있습니다. 분산 환경인 경우 redis setnx 명령을 사용하여 해결할 수 있습니다.

(3) 캐시 무효화 시점을 일관되지 않게 만들고 균일한 분포를 달성하기 위해 서로 다른 키를 서로 다른 만료 시간으로 설정할 수 있습니다.

(4) 만료되지 않음

Redis는 만료되지 않도록 설정됩니다. 이렇게 하면 핫스팟이 없어집니다. 즉, 물리적으로 만료되지 않습니다.

(5) 리소스 보호

넷플릭스의 hystrix를 사용하면 다양한 리소스의 스레드 풀을 분리하여 메인 스레드 풀을 보호할 수 있습니다.

추천 튜토리얼: "

Redis 튜토리얼

"

위 내용은 Redis 눈사태란 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.