싱글 쓰레드인 레디스가 왜 빠를까
#1 메모리
연산은 메모리에 저장된 데이터를 대상으로 동작
메모리 처리가 디스크 대비 훨씬 빠름
#2 단순한 모델
키-값 모델 -> 해시테이블로 데이터 관리
해시테이블의 키 조회 시간 복잡도는 O(1)
#3 논블로킹 IO + IO 다중화 한 쓰레드로 여러 클라이언트에 대한 IO 처리 가능 모든 고성능 서버의 구현 방식
#4 싱글 쓰레드로 부하 감소
컨텍스트 스위칭 부하 감소 동시성 제어를 위한 잠금이 필요 없음
#5 Redis Sorted Set을 통한 순위표/랭킹 구현에 사용 가능
List를 계층적으로 두어 O(log n)으로 동작
Redis Sorted Set = Skip List(span 값을 두어 랭킹까지) + Hashtable : 계층 구조에 따른 메모리 사용량 증가
Last updated