A retail company is designing an application that receives transaction logs from physical stores. The transaction logs must be processed in the exact order they are received to ensure accurate inventory updates. The processing application must run continuously as a background process to handle the constant stream of messages. The solutions architect needs to decouple the ingestion layer from the processing layer.
Which TWO actions should the solutions architect take to meet these requirements?
- Create an Amazon SQS FIFO queue to buffer the incoming transaction logs.Answer
- Deploy the processing worker on Amazon ECS using AWS Fargate to run the containerized application continuously.Answer
- CCreate an Amazon SQS Standard queue to buffer the incoming transaction logs.
- DDeploy the processing worker as an AWS Lambda function configured with a 15-minute timeout to execute the code continuously.
Answer
The solutions architect should create an Amazon SQS FIFO queue to buffer the transaction logs and deploy the processing worker on Amazon ECS using AWS Fargate.
To satisfy the requirements of decoupling and strict message ordering, the solutions architect must use an Amazon SQS FIFO queue. Additionally, because the processing service needs to run continuously as a background process, hosting it on Amazon ECS with AWS Fargate provides a scalable, managed, and continuous execution environment.
Step-by-Step Solution
Key Concept
Decoupling message processing using SQS FIFO queues and deploying continuous consumers using Amazon ECS.