AWS Certified Solutions Architect – ProfessionalContinuously Improve Existing SolutionsMedium
An online gaming company's backend microservices communicate synchronously via HTTP API calls. During peak gaming events, a single slow microservice can cause a cascading failure, leading to degraded performance or complete outages for the entire system. The company needs to improve the resilience and scalability of its microservices architecture by decoupling these services, ensuring that failures in one service do not impact others, and enabling services to process requests independently and at their own pace. Which AWS messaging service should the Solutions Architect recommend to achieve this asynchronous communication?
- AAmazon Simple Queue Service (SQS)
- BAWS Step Functions
- CAmazon Simple Notification Service (SNS)
- DAmazon Kinesis Data Streams
Show answer & explanationAnswer & explanation
Correct answer: A. Amazon Simple Queue Service (SQS)
Amazon SQS is a fully managed message queuing service that decouples sending and receiving components. It allows microservices to communicate asynchronously, buffering requests and preventing cascading failures by enabling services to process messages at their own pace.
Why the other options are wrong
- B. AWS Step Functions is for coordinating distributed applications and microservices using visual workflows, not primarily for simple asynchronous message queuing between services.
- C. Amazon SNS is a pub/sub messaging service, primarily for broadcasting messages to multiple subscribers. While it enables decoupling, it's not designed for point-to-point, buffered processing by individual services in the same way SQS is.
- D. Amazon Kinesis Data Streams is for real-time processing of large streams of data, not general-purpose asynchronous message queuing between microservices for command/event processing.
Amazon Simple Queue Service (SQS)
A fully managed message queuing service that enables you to decouple and scale microservices, distributed systems, and serverless applications.
- Decouples producers and consumers.
- Buffers messages, preventing cascading failures.
- Supports standard (at-least-once delivery) and FIFO (exactly-once delivery, strict ordering) queues.
Memory trick: SQS is like a post office for your services, holding letters until they're ready to be picked up.