A company has a legacy data processing application that runs on Amazon EC2 instances. Data is processed sequentially, but the order of results does not matter. The application uses a monolithic architecture and currently scales only by increasing instance size. The developers are rewriting the application as microservices on Amazon Elastic Container Service (Amazon ECS). What should a solutions architect recommend for communication between the microservices?
Choose an answer
Tap an option to check your answer.
Correct answer: Create an Amazon Simple Queue Service (Amazon SQS) queue. Add code to the data producers to send data to the queue, and add code to the data consumers to process data from the queue..
Why this is the answer
Using Amazon SQS is the most appropriate solution because it provides a fully managed message queuing service that decouples microservices. Since the data is processed sequentially but the order of results does not matter, SQS Standard queues are ideal, offering high throughput and at-least-once delivery. Data producers can asynchronously send messages to the queue, and data consumers can pull messages for processing at their own pace, improving fault tolerance and scalability. Amazon SNS is less suitable because it's a publish/subscribe service primarily for fan-out scenarios where multiple subscribers need the same message, not for sequential processing by a single consumer group. AWS Lambda for message passing would introduce unnecessary complexity and latency, as Lambda is typically used for event-driven compute, not as a primary message broker. Amazon DynamoDB with Streams is designed for capturing item-level changes in a table, which is not the primary use case for inter-service communication where a dedicated message queue is more efficient and scalable.
Pass your exam — without the endless answer hunt
Get every verified question and explanation for this exam in one place, and save hours of prep. 1,000+ certifications · 20+ languages · free to start.
Pass your exam faster → No card needed