기술나눔

Redis 스레드 모델

2024-07-08

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

0. 참고사항

[Redis 스레드 모델]
[주요 문제 해결 및 솔루션 아이디어]

1. Redis 싱글쓰레드에 대한 이해

단일 스레드가 필요한 이유: CPU는 성능 병목 현상(메모리 및 네트워크)이 아니며 단일 스레드가 비즈니스 요구 사항을 충족할 수 있습니다.

네트워크 IO와 키-값 쌍 읽기 및 쓰기는 하나의 스레드로 완료됩니다.

여기에 이미지 설명을 삽입하세요.

2. Redis 멀티스레딩의 이해

지속성(aof, rdb), 비동기 삭제(big key), 데이터 복제(master-slave, sentinel, Cluster)는 멀티스레딩을 채택합니다.

여기에 이미지 설명을 삽입하세요.

3. 단일 스레드 IO의 과제: 큰 핵심 문제

상세한:[주요 문제 해결 및 솔루션 아이디어]

일반적인 상황에서는 del 명령을 사용하여 데이터를 빠르게 삭제할 수 있습니다. 그러나 삭제된 키가 수천 개의 요소를 포함하는 해시 세트와 같이 매우 큰 개체인 경우 del 명령으로 인해 Redis 기본 스레드가 중단됩니다.

Big Key 문제는 본질적으로 Big Value 문제입니다.

여기에 이미지 설명을 삽입하세요.

3.0 100만개 데이터 삽입 시뮬레이션

for((i=1;i