728x90
Redis와 Memcached는 둘 다 분산 캐시로 사용되는 인메모리 데이터 저장소이지만 여러 차이점들이 존재한다.
데이터 구조
- Redis
- 단순한 key-value 저장소뿐만 아니라 다양한 데이터 구조를 지원 다양한 종류의 데이터 처리에 적합하다.
- 문자열, 리스트(List), 해시(Hash), 셋(Set) 등
- Memcached
- 오직 단순한 key-value 데이터 구조만 지원한다. 문자열(String)만 저장할 수 있다.
영속성 (Persistence)
- Redis: 영속성(Persistence) 을 보장한다.
- Memcached: 영속성을 보장하지 않는다.
복제(Replication) 및 클러스터링(Clustering)
- Redis
- 복제 기능을 제공하며, 클러스터링을 통해 여러 서버 간에 데이터를 분산 처리할 수 있다.
- 이를통해 고가용성과 확장성을 확보할 수 있다.
- Memcached
- 기본적으로는 복제 기능이 없고, 클러스터링을 위한 별도의 설정이 필요하다.
메모리 관리
- Redis
- LRU(Least Recently Used) 정책을 통해 메모리 관리를 할 수 있다.
- 데이터를 압축하고 메모리 최적화 기능도 제공하여 메모리 효율을 높일 수 있다.
- Memcached
- LRU 정책을 사용하지만, 메모리 최적화 기능은 제한적이다.
속도
- Redis
- 기본적으로 빠르며 성능이 뛰어나지만, 복잡한 데이터 구조나 영속성 기능이 활성화된 경우에는 성능 저하가 발생한다.
- Memcached
- 단순한 구조로 인해 순수한 캐싱 성능만 따지면 Redis보다 빠르다.
'CS' 카테고리의 다른 글
[Backend] JSP (0) | 2025.04.02 |
---|---|
RestTemplate, WebClient, RestClient, FeignClient (0) | 2025.02.15 |
[CS] REST, RESTful API란? (0) | 2024.05.24 |
[Network] 실시간 통신 - webSocket (0) | 2024.01.31 |
[Network] 실시간 통신 - AJAX(polling, long polling, streaming) (0) | 2024.01.31 |