ElastiCache와 ElastiCache Serverless 비교하기 (작성중)
ElastiCache
ElastiCache는 관리형 인메모리 캐시 서비스입니다.
Memcached와 Redis OSS 타입이 있으며 ElastiCache Redis OSS 이해와 최적화 노드 선택하기에서 그 내용을 충분히 다루었습니다.
ElastiCache의 근본적인 문제점
ElastiCache를 다양한 목적으로 사용하는 기업이 많습니다.
운영환경이 dev, stg, prod 기준으로 cache.t4g.micro 3개 운영시 월 45,000원의 비용이 지출됩니다. 하지만 Redis OSS의 메모리가 부족한 상황, 장애 발생 시 Redis OSS NodeGroup 내의 데이터 보존 등을 고려하면 Mulit-AZ 활성화와 더불어 몇 가지 추가 설정이 필요합니다.
Node Types | vCPU | MEM | Network | Per Hour | Per Price |
---|---|---|---|---|---|
cache.t4g.micro | 2 | 0.5GiB | ~ 5GB | 0.016$ | 15,897.6 |
cache.t4g.small | 2 | 1.37GiB | ~ 5GB | 0.032$ | 31,795.2 |
cache.t4g.medium | 2 | 3.09GiB | ~ 5GB | 0.065$ | 64,584 |
따라서 dev, stg 환경에서 cache.t4g.micro를 사용하더라도 prod 환경에서는 cache.t4g.small * 2 등의 구성을 하게 됩니다. (정확한 노드 타입은 개략적인 규모 추정 및 매트릭 기반으로 의사결정할 것)
이 경우 dev, stg 환경에 대해 ECPU* 및 사용 시간에 따라 비용이 지불되는 ElastiCache Serverless 도입을 검토해볼 수 있습니다.
ECPU* : ElastiCache Compute Process Unit
ElastiCache Serverless 비용체계
ElastiCache Serverless의 경우 다음과 같은 비용 체계를 따라가게 됩니다.
여기에 있는 ECPU*는 1KB를 처리하기 위해서는 1ECPU가 필요함을 알 수 있습니다.
즉 1,000,000 ECPU는 1,000,000 KB ≒ 1,000 MB ≒ 1GB를 의미합니다.
즉 30일 간, 1GB의 데이터를 처리한다면 다음과 같은 비용이 지불될 것으로 예상 가능합니다.