솔루션스 아키텍트는 AWS에서 새 애플리케이션을 위한 클라우드 아키텍처를 설계하고 있습니다. 처리는 병렬로 실행되어야 하며, 처리할 작업 수에 따라 애플리케이션 노드를 필요에 따라 추가하거나 제거해야 합니다. 프로세서 애플리케이션은 상태 비저장(stateless)입니다. 설계는 느슨하게 결합되어야 하며 작업 항목은 내구성 있게 저장되어야 합니다. 솔루션스 아키텍트는 어떤 설계를 사용해야 할까요?
정답 선택
옵션을 탭하여 정답을 확인하세요.
정답: 처리해야 할 작업을 보관하기 위해 Amazon SQS queue를 생성합니다. 프로세서 애플리케이션이 포함된 Amazon Machine Image (AMI)를 생성합니다. AMI를 사용하는 launch template을 생성합니다. launch template을 사용하여 Auto Scaling group을 생성합니다. SQS queue의 항목 수에 따라 노드를 추가하고 제거하도록 Auto Scaling group 스케일링 정책을 설정합니다..
이것이 정답인 이유
이 솔루션은 메시지 큐(Amazon SQS)를 사용하여 작업 항목을 내구성 있게 저장하고, 처리량에 따라 자동으로 확장/축소되는(Auto Scaling group) 느슨하게 결합된 아키텍처를 제공합니다. SQS 큐의 항목 수를 기반으로 Auto Scaling group의 확장 정책을 설정하면, 처리해야 할 작업량에 따라 애플리케이션 노드가 효율적으로 추가되거나 제거됩니다. 이는 병렬 처리 요구사항과 상태 비저장 애플리케이션에 적합합니다.
오답 설명:
Amazon SNS topic은 메시지를 구독자에게 푸시하는 데 사용되며, 작업 항목을 내구성 있게 저장하는 데 적합하지 않습니다.
네트워크 사용량 또는 CPU 사용량에 따른 Auto Scaling 정책은 SQS 큐의 항목 수에 기반한 확장보다 작업 부하에 덜 직접적으로 반응할 수 있습니다.
Launch configuration은 이전 기술이며, launch template이 더 유연하고 권장됩니다.