Among Us - Yellow Crewmate [ElasticCache] Redis VS Memcached

AWS/용어

[ElasticCache] Redis VS Memcached

감쟈! 2021. 3. 14. 00:16

AWS ElastiCache에서는 Redis 와 Memcached 두가지의 캐시 엔진을 지원하는데, 각각 어떤 기능이 있고 무슨 차이가 있는지 알아보도록 하자.

 

 

 

우선 ElastiCache에 대해서 간단히 알아보자


Amazon ElastiCache

Amazon ElastiCache는 AWS에서 제공하는 인 메모리 데이터 스토어 및 캐싱 서비스이다.

 

Amazon ElastiCache를 사용해 처리량이 많고 지연 시간이 짧은 인 메모리 데이터 스토어에서 데이터를 검색하여 데이터베이스 성능을 강화시킬 수 있다. ElastiCache는 캐싱, 세션 스토어, 게이밍, 지리 공간 서비스, 실시간 분석 및 대기열ㄹ과 같은 실시간 사용 사례에 많이 선택되고 있다.

 

Amazon ElastiCache는 Redis와 MemCached 캐시 엔진을 지원하고 있는데, 각각 어떤 성능을 가지고 있는지? 어떨때 써야하는지? 알아보자


MemCached 엔진

 

  • 멀티스레드 아키텍처를 지원한다
  • HTML 같은 단순한 코드를 캐싱할 때, 비교적 작은 메모리를 사용한다.
  • String 타입만 지원하고 오로지 읽기 전용이기 때문에 다른 작업을 처리하지 않아서 데이터 저장하기에 좋다.
  • Redis에 비해 수평적 확장의 이점

 

 

 

Redis 엔진

 

  • String 뿐만 아니라 List, Set, Hash, Bit 배열등 다양한 자료구조를 지원하기 때문에 활용도가 높다.
  • Master - Slave 구조의 레플리케이션을 생성할 수 있어서 읽기 능력을 향상시킬 수 있고, 고 가용성 클러스터 제공
  • 스냅샷 사용가능  
  • 특별히 MemCached 엔진이 필요한 경우가 아니면 대부분 Redis 사용

공통점

  • 인 메모리 데이터 스토어 ( 메모리 안에 데이터가 저장되어 있어 캐시에 유리)
  • Key-value 형식의 NoSql
  • 둘 다 완성형 오픈소스 프로젝트

 

 

주의할 점

Redis 엔진은 기본적으로 MemCached의 단점을 보완하면서 등장했기 때문에 기능도 더 다양하고 널리 쓰이고 있다.

하지만, Redis는 싱글 스레드만 지원하고 있기 때문에 1번에 1개의 명령어만 실행 가능하다.

Redis가 많이 쓰이고 있지만, 사용 유무에 따라 적절하게 선택해주는게 좋을 것 같다.

'AWS > 용어' 카테고리의 다른 글

[ELB] ALB / NLB / CLB / GWLB  (0) 2021.05.16
[VPC] NACL과 Security Group의 차이점은 무엇일까??  (0) 2021.02.24
[RDS] Multi AZ와 Read replica  (0) 2021.02.21
[AWS] 리전과 가용 영역  (0) 2021.02.03