-
aws ElastiCache Overviewaws 2024. 2. 7. 01:06
AWS ElastiCache Overview
- 캐싱 기술인 Redis 또는 Memcached를 관리할 수 있도록 도와줍니다.
- Redis는 오픈 소스 인메모리 키-값 저장소입니다. 고급 데이터 구조 및 다양한 데이터 유형 지원으로 다양한 사례에 적합하며, 캐싱, 실시간 분석 및 메시지 브로커링과 같은 용도에 사용됩니다.
- Memcached는 또 다른 오픈 소스 고성능 메모리 객체 캐싱 시스템입니다. 단순한 키-값 저장소가 캐싱 목적으로 충분한 경우 사용되며 효과적입니다
- 캐시는 매우 높은 성능과 짧은 지언 시간을 가진 인메모리 데이터베이스 입니다.
- 캐시는 읽기 집약적인 워크로드에서 데이터베이스의 로드를 줄여줍니다.
- 일반적인 쿼리는 캐시에 저장되므로, 매번 데이터베이스를 쿼리하지 않아도 됩니다,
- 캐시만 사용하여 쿼리의 결과를 검색할 수 있고 애플리케이션을 상태 비저장형으로 할 수 있게 도와줍니다 애플리케이션의 상태를 Amazon ElastiCache에 저장해 RDS와 동일한 이점이 있기 때문에, AWS는 데이터베이스의 운영 체제를 유지 관리할 수 있습니다.
ElastiCache 아키텍처
Amazon ElastiCahe와 RDS 데이터베이스 애플리케이션이 있습니다. ElastiCahe를 쿼리합니다. 쿼리가 이미 발생했는 확인 하려고합니다. 이미 발생한 ElastiCahe에 저장되어 있다면, 캐시 히트라고 합니다. 바로 ElastiCache에서 답을 가져옵니다. 쿼리를 수행하기 위해 데이터베이스로 이동하는 시간이 절약됩니다. 캐시 미스가 발생하면, 데이터베이스에서 데이터를 가져와야 합니다, 데이터베이스에서 읽어야 합니다. 다른 애플리케이션이나 다른 인스턴스에서 같은 쿼리가 발생하면 데이터를 캐시에 다시 쓸 수 있습니다. 다음에 동일한 쿼릴가 일어나면 캐시 히트가 됩니다. 이렇게 하면 RDS 데이터베이스의 로드를 줄이는데 도움이 됩니다. 데이터를 캐시에 저장하면 캐시 무효화 전략이 있어야 합니다. 가장 최신 데이터만 사용되어야 합니다.
이 아키텍처는 사용자 세션을 저장합니다. 애플리케이션 상태 비저장으로 만들려고합니다. 즉 사용자가 어떤 애플리케이션에 로그인하면, 애플리케이션이 세션 데이터를 Amazon ElastiCache에 씁니다. 사용자가 애플리케이션의 다른 인스턴스로 리디렉션 되며, 애플리케이션은 그 세션의 세션 캐시를 Amazon ElastiCahe에서 직접 검색할 수 있으므로, 사용자는 여전히 로그인 상태입니다. 다시 한번 더 로그인할 필요가 없습니다. 즉 애플리케이션을 상태 비저장형으로 만드는 겁니다. 사용자의 세션 데이터를 Amazon ElastiCache에 기록해서요
Redis와 Memcache 차이점
- Redis의 경우 자동 장애 조치 기능이 있는 다중 AZ가 있고, 읽기 복제본이 있습니다.
- 읽기를 확장하고 고가용성을 가져려면 RDS와 매우 유사합니다.
- AOF 지속성을 이용한 데이터 내구성이 있습니다. 백업 및 복원 기능이 있습니다.
- Redis는 데이터 내구성에 대한 것이며, 기능 면에서는 캐시로서, 세트 및 정렬된 세트를 지원합니다.
- Memcache는 데이터 분할을 위해 멀티 노드를 사용합니다. 이것을 샤딩이라고 합니다.
- 고가용성이 없고 복제ㅐ가 일어나지 않으며 영구 캐시가 아니며 백업 및 복원이 없습니다.
- 여러 인스턴스가 모두 샤딩을 통해 작동합니다.
'aws' 카테고리의 다른 글
aws Route 53 (0) 2024.02.09 aws ElastiCache 실습 (0) 2024.02.08 aws RDS 백업 (1) 2024.02.05 aws Aurora (0) 2024.02.02 aws RDS 실습 (0) 2024.02.01