AWS Certified Solutions Architect Associate SAA-C03 Practice Question
A company is building an e-commerce application that must scale to handle sudden spikes in traffic during sales events. The application consists of a web front end that interacts with a back-end order processing system. The company wants to design an architecture that is scalable and minimizes the impact on other components if one component fails. What is the best architectural pattern to achieve this?
Deploy the application on a single large EC2 instance to handle peak loads.
Use a microservices architecture with services communicating via message queuing service such as Amazon SQS.
Implement a monolithic architecture on Amazon EC2 Auto Scaling groups.
Use a tightly coupled multi-tier architecture with direct service-to-service communication.
Using a microservices architecture where services communicate via Amazon Simple Queue Service (Amazon SQS) allows each component to function independently. This approach enhances scalability since each service can scale separately to handle load and ensures that if one component fails, it doesn't directly affect the overall architecture. Monolithic architectures, even when using Amazon EC2 Auto Scaling, are less flexible and can become bottlenecks. Deploying on a single large EC2 instance introduces a single point of failure, hence, lacks both scalability and fault tolerance. A tightly coupled multi-tier architecture increases the risk that a failure in one service will impact others due to direct dependencies.
Ask Bash
Bash is our AI bot, trained to help you pass your exam. AI Generated Content may display inaccurate information, always double-check anything important.
What is a microservices architecture?
Open an interactive chat with Bash
How does Amazon SQS facilitate communication between microservices?
Open an interactive chat with Bash
What are the benefits of using a message queuing service like Amazon SQS over a monolithic architecture?