Redis Architecture
Redis Architecture
· Version : Redis 3.2.100 (Windows)
아래 그림은 Redis Server Architecture 이며, 크게 3가지 영역인, 메모리, 파일, 프로세스 영역으로 구성되어 있다.
[메모리 영역]
· Resident Area (Working Set) : 사용자가 Redis 서버에 접속해서 처리하는 모든 데이터가 가정 먼저 저장되는 영역이며 실제 작업이 수행되는 영역.
· Data Structure : Redis를 운영하기 위한 다양한 정보를 저장하고 관리하기 위한 영역.
[파일 영역]
· AOF 파일 : 메모리에 저장된 사용자 데이터를 파일에 기록하는 영역 (스냅샷 데이터)
· DUMP 파일 : 소량의 데이터를 일시적으로 저장할때 사용하는 영역
[프로세스 영역]
· Server Process : redis-server.exe 또는 redis-sentinel.exe 실행 코드에 의해 활성화되는 프로세스이며, Redis 인스턴스 관리 및 사용자 요청 작업을 처리한다. 4개의 멀티 스레드로 구성된다.
ü Main Thread : Redis 서버에서 수행되는 대부분의 명령어와 이벤트 처리
ü BIO-Close-FILE : AOF(Append Only File)에 데이터를 Rewrite 할때 기존 파일은 Close 하고 새로운 AOF 파일에 Write할 때 사용.
ü BIO-AOF-Resync : AOF에 쓰기 작업을 수행할 때 사용
ü BIO-LAZY-Free : unlink, FLUSHALL, FLUSHDB 명령어를 실행할 때 빠른 성능을 보장하기 위해 백그라운드에서 사용
· Client Process : redis-cli.exe 또는 사용자 애플리케이션에 의해 실행되는 명령어를 실행하기 위해 제공되는 프로세스.
[참고자료]
https://docs.redislabs.com/latest/rs/concepts/
2019-05-14 / Sungwook Kang / http://sungwookkang.com
Redis, Redis Architecture, 레디스 아키텍처, 레디스 스레드, 레디스 프로세스, 레디스 메모리 아키텍처