금융 회사의 고객은 문자 메시지를 보내 재정 고문과의 약속을 요청합니다. Amazon EC2 인스턴스에서 실행되는 웹 애플리케이션은 약속 요청을 수락합니다. 텍스트 메시지는 웹 애플리케이션을 통해 Amazon Simple Queue Service(Amazon SQS) 대기열에 게시됩니다. EC2 인스턴스에서 실행되는 또 다른 애플리케이션은 회의 초대장과 회의 확인 이메일 메시지를 고객에게 보냅니다. 예약에 성공한 후 이 애플리케이션은 회의 정보를 Amazon DynamoDB 데이터베이스에 저장합니다. 회사가 확장됨에 따라 고객은 회의 초대장이 도착하는 데 시간이 더 오래 걸린다고 보고합니다. 솔루션 설계자는 이 문제를 해결하기 위해 무엇을 권장해야 합니까?
- A. DynamoDB 데이터베이스 앞에 DynamoDB Accelerator(DAX) 클러스터를 추가합니다.
- B. 약속 요청을 수락하는 웹 애플리케이션 앞에 Amazon API Gateway API를 추가합니다.
- C. Amazon CloudFront 배포를 추가합니다. 오리진을 약속 요청을 수락하는 웹 애플리케이션으로 설정합니다.
- D. 회의 초대를 보내는 애플리케이션에 대한 Auto Scaling 그룹을 추가합니다. SQS 대기열의 깊이에 따라 확장되도록 Auto Scaling 그룹을 구성합니다.✓ 정답
해설
【핵심 용어】 ▸ SQS 대기열 깊이 — 처리 대기 중인 메시지 수, 병목 지표 ▸ Auto Scaling(메트릭 기반) — 큐 깊이 증가시 워커 자동 증가 ▸ 처리 병목 — 입력(요청 수락)이 아닌 처리(초대 발송) 느림 【정답 포인트】 ▸ 병목 분석 → "회의 초대 지연" = 발송 애플리케이션 처리 느림 ▸ SQS 메시지 쌓임 → 발송 앱 인스턴스 부족 ▸ Auto Scaling(SQS 깊이 기반) → 큐 길이 증가시 워커 자동 확장 ▸ 처리 가속화로 고객 대기 시간 단축 【오답 체크】 (A) DAX 캐시 — DynamoDB 읽기 성능 개선, 초대 "발송" 지연과 무관 (B) API Gateway — 요청 수락 단계 개선, 초대 발송 처리 속도 미영향 (C) CloudFront — CDN 콘텐츠 캐싱용, 메일 발송 가속화 불가능 【시험 포인트】 ▸ SQS 메시지 누적 = 워커 부족 신호 → Auto Scaling으로 대응 ▸ 병목점 정확히 파악: 입력 vs 처리(지연)