회사에는 Amazon RDS 인스턴스에 데이터를 저장하는 애플리케이션이 있습니다. 애플리케이션은 정기적으로 높은 트래픽의 급증을 경험하여 성능 문제를 발생시킵니다. 피크 트래픽 기간 동안 개발자는 모든 데이터베이스 쿼리의 쿼리 속도가 감소하는 것을 확인합니다. 팀의 기술 리드는 다중 스레드이고 확장 가능한 캐싱 솔루션을 사용하여 무거운 읽기 트래픽을 오프로드해야 한다고 결정합니다. 솔루션은 성능을 개선해야 합니다. 가장 낮은 복잡성으로 이 요구사항을 충족할 솔루션은 무엇입니까?
- A. Amazon ElastiCache for Memcached를 사용하여 메인 데이터베이스에서 읽기 요청을 오프로드합니다.✓ 정답
- B. 데이터를 Amazon DynamoDB로 복제합니다. DynamoDB Accelerator (DAX) 클러스터를 설정합니다.
- C. Amazon RDS 인스턴스를 Multi-AZ 배포로 구성합니다. 메인 데이터베이스에서 읽기 요청을 대기 인스턴스로 오프로드합니다.
- D. Amazon ElastiCache for Redis를 사용하여 메인 데이터베이스에서 읽기 요청을 오프로드합니다.
해설
【핵심 용어】 • ElastiCache for Memcached: 멀티스레드, 수평 확장 가능, 단순 키-값 캐시 • Redis는 단일 스레드(샤딩 가능), 데이터 구조/지속성/복제 지원하지만 단순 캐시 용도엔 Memcached가 더 단순 【정답 포인트】 정답: A (Memcached로 읽기 트래픽 오프로드) '멀티스레드 + 확장 가능한 캐시'는 Memcached의 핵심 강점. 복잡도 최소. 【오답 체크】 • B: DynamoDB로 복제 = 데이터 모델 재설계 필요(복잡도↑) • C: Multi-AZ 스탠바이는 페일오버 용도, 일반 트래픽 분산 불가 • D: Redis는 단일 스레드로 멀티스레드 요구와 어긋남