본문으로 건너뛰기

성능/비용 아키텍처

좋은 아키텍처는 빠르면서도 비용 효율적입니다. SAA-C03은 “더 빠른 답"과 “더 싼 답"이 충돌하는 상황을 자주 제시하며, 이때 요구사항에 맞는 균형점을 찾는 능력을 평가합니다. 이 페이지는 캐싱, 스토리지 클래스, 컴퓨팅 옵션, 비용 가시화라는 네 가지 도구를 다룹니다.

캐싱으로 성능 끌어올리기

캐싱은 반복되는 요청을 원본(Origin)까지 보내지 않고 더 가까운 위치에서 즉시 응답하는 기법입니다.

  • CloudFront — 정적 콘텐츠(이미지, JS, CSS, 동영상)를 엣지 location에 캐싱하여 사용자와 물리적으로 가까운 곳에서 응답합니다. 정적 웹사이트뿐 아니라 동적 API 응답의 일부도 캐싱 정책으로 가속할 수 있습니다.
  • ElastiCache — Redis 또는 Memcached 기반의 인메모리 캐시로, 데이터베이스 앞단에 두어 반복 쿼리 결과를 캐싱합니다. RDS에 매번 쿼리를 보내는 대신 ElastiCache에서 먼저 응답하면 DB 부하와 응답 시간을 동시에 줄일 수 있습니다.
CloudFront는 “콘텐츠를 사용자에게 가깝게”, ElastiCache는 “데이터를 애플리케이션에 가깝게” — 이 둘은 캐싱 대상의 위치가 다를 뿐 목적은 같습니다. 둘을 함께 쓰는 구조(CloudFront + ALB + EC2 + ElastiCache + RDS)가 SAA 시나리오에 자주 등장합니다.

스토리지 클래스 선택

S3는 접근 빈도와 비용 사이의 trade-off에 따라 여러 스토리지 클래스를 제공합니다.

클래스적합한 용도특징
S3 Standard자주 접근하는 활성 데이터가장 높은 가용성, 가장 높은 비용
S3 Intelligent-Tiering접근 패턴이 불확실한 데이터접근 빈도를 자동 감지해 계층 이동
S3 Standard-IA드물게 접근하지만 즉시 필요저장 비용 저렴, 검색(retrieval) 비용 발생
S3 Glacier Instant/Flexible장기 보관, 드문 접근매우 저렴, 검색에 수분~수시간 소요
S3 Glacier Deep Archive거의 접근하지 않는 아카이브가장 저렴, 검색에 최대 12시간

수명 주기 정책(Lifecycle Policy)을 설정하면 일정 기간이 지난 객체를 자동으로 더 저렴한 클래스로 이동시켜, 별도 운영 부담 없이 비용을 최적화할 수 있습니다.

컴퓨팅 옵션 선택

EC2는 과금 모델에 따라 비용 구조가 크게 달라집니다.

  • On-Demand — 사용한 만큼 시간 단위 과금. 워크로드 패턴을 예측하기 어려운 초기 단계에 적합합니다.
  • Reserved Instances / Savings Plans — 1~3년 약정으로 On-Demand보다 최대 70% 이상 절감. 꾸준히 가동되는 베이스라인 워크로드에 적합합니다.
  • Spot Instances — 유휴 용량을 매우 저렴하게 사용하지만 AWS가 필요 시 회수(중단)할 수 있습니다. 배치 작업, 빌드 서버처럼 중단에 강한(fault-tolerant) 워크로드에 적합합니다.

서버리스 옵션인 LambdaFargate는 인스턴스 단위 과금이 아니라 실행 시간/리소스 단위 과금이라, 트래픽이 간헐적이거나 예측 불가능한 워크로드에서는 EC2보다 비용 효율적일 수 있습니다.

Cost Explorer로 비용 가시화하기

Cost Explorer는 계정의 비용/사용량을 서비스, 태그, 시간 단위로 시각화하는 도구입니다.

  • 어떤 서비스가 비용의 대부분을 차지하는지 파악하여 최적화 대상을 정합니다.
  • 태그 기반으로 비용을 필터링하면, 프로젝트별·팀별 비용 분담을 추적할 수 있습니다.
  • 비용 이상 탐지(Cost Anomaly Detection)와 함께 사용하면 예상치 못한 비용 급증을 조기에 발견할 수 있습니다.
캐싱이나 저렴한 스토리지 클래스를 도입하는 것만으로 비용 최적화가 끝나지 않습니다. Cost Explorer로 먼저 무엇이 비용을 발생시키는지 측정한 뒤, 그 측정 결과를 기반으로 캐싱·스토리지·컴퓨팅 옵션을 조정하는 순서가 실무에서 더 효과적입니다.