Q10. AWS 전자상거래 애플리케이션에서 주문 처리 순서 보장하기

AWS 자격증을 준비하는 여러분, 안녕하세요. 오늘은 전자상거래 애플리케이션에서 주문 처리 순서를 보장하는 방법에 대해 알아보겠습니다. 이는 실제 비즈니스 시나리오에서 매우 중요한 요구사항이며, AWS의 여러 서비스를 활용하여 이를 구현할 수 있습니다.

문제 상황

Q1:
회사는 AWS에서 전자 상거래 웹 애플리케이션을 구축하고 있습니다. 애플리케이션은 처리할 Amazon API Gateway REST API에 새 주문에 대한 정보를 보냅니다. 회사는 주문이 접수된 순서대로 처리되기를 원합니다.
어떤 솔루션이 이러한 요구 사항을 충족합니까?

<small>A company is building an e-commerce web application on AWS. The application sends information about new orders to an Amazon API Gateway REST API to process. The company wants the orders to be processed in the order in which they are received.
Which solution will meet these requirements?</small>

선택지

A. API Gateway 통합을 사용하여 애플리케이션이 주문을 수신할 때 Amazon Simple Notification Service(Amazon SNS) 주제에 메시지를 게시합니다. AWS Lambda 함수를 주제에 구독하여 처리를 수행합니다.
<small>Use API Gateway integration to publish messages to an Amazon Simple Notification Service (Amazon SNS) topic when the application receives orders. Subscribe an AWS Lambda function to the topic to perform processing.</small>

B. API Gateway 통합을 사용하여 애플리케이션이 주문을 수신할 때 Amazon Simple Queue Service(Amazon SQS) FIFO 대기열에 메시지를 보냅니다. 처리를 위해 AWS Lambda 함수를 호출하도록 SQS FIFO 대기열을 구성합니다.
<small>Use API Gateway integration to send messages to an Amazon Simple Queue Service (Amazon SQS) FIFO queue when the application receives orders. Configure the SQS FIFO queue to invoke an AWS Lambda function for processing.</small>

C. API Gateway 권한 부여자를 사용하여 애플리케이션이 주문을 처리하는 동안 모든 요청을 차단합니다.
<small>Use an API Gateway authorizer to block all requests while the application processes orders.</small>

D. API Gateway 통합을 사용하여 애플리케이션이 주문을 수신할 때 Amazon Simple Queue Service(Amazon SQS) 표준 대기열에 메시지를 보냅니다. 처리를 위해 AWS Lambda 함수를 호출하도록 SQS 표준 대기열을 구성합니다.
<small>Use API Gateway integration to send messages to an Amazon Simple Queue Service (Amazon SQS) standard queue when the application receives orders. Configure the SQS standard queue to invoke an AWS Lambda function for processing.</small>

정답 및 해설

정답은 B입니다.

Amazon SQS FIFO(First-In-First-Out) 대기열은 메시지를 보내고 받는 정확한 순서를 유지합니다. 이는 주문이 접수된 순서대로 처리되어야 한다는 요구사항을 충족시키는 가장 적합한 솔루션입니다.

작동 방식:

  1. 애플리케이션이 새 주문 정보를 Amazon API Gateway REST API로 전송합니다.
  2. API Gateway 통합을 사용하여 이 정보를 Amazon SQS FIFO 대기열로 전송합니다.
  3. SQS FIFO 대기열은 메시지(주문)를 받은 순서대로 정확히 유지합니다.
  4. 대기열은 AWS Lambda 함수를 호출하여 각 주문을 처리합니다.

이 방식을 통해 주문이 접수된 정확한 순서대로 처리될 수 있습니다.

오답 설명

A. Amazon SNS: 메시지 순서를 보장하지 않으며, 여러 구독자에게 동시에 메시지를 전달할 수 있어 순서 보장이 어렵습니다.

C. API Gateway 권한 부여자: 요청을 차단하는 것은 주문 처리 순서와 관련이 없으며, 애플리케이션의 기능을 제한할 수 있습니다.

D. SQS 표준 대기열: 메시지의 정확한 순서를 보장하지 않습니다. 대규모 처리량에 적합하지만, 순서가 중요한 경우에는 FIFO 대기열을 사용해야 합니다.

결론

이 문제는 AWS의 메시징 서비스들의 특성을 이해하고, 특정 비즈니스 요구사항에 맞는 적절한 서비스를 선택하는 능력을 테스트합니다. 전자상거래 애플리케이션에서 주문 처리 순서가 중요한 경우, Amazon SQS FIFO 대기열을 사용하는 것이 가장 적합한 솔루션입니다. 이는 메시지의 순서를 보장하면서도 확장성과 신뢰성을 제공합니다.

원본 문제 링크

댓글

이 블로그의 인기 게시물

Windows Git 설치 및 GitHub 활용 방법

Anaconda-Python 환경 VSCode에서 사용하기