SAP-C02 Question 358
Select 2Your organization has an existing monolithic application hosted on Amazon EC2 instances behind an Application Load Balancer (ALB). The application experiences periodic spikes in traffic, leading to slow response times and occasional downtime. You have been tasked with improving the application's performance and availability while adhering to the organization's goal of adopting a microservices architecture. Which of the following changes should you implement to achieve this goal?
- A
Migrate the monolithic application to AWS Lambda and use Amazon API Gateway to manage incoming requests.
- B
Refactor the monolithic application into containerized microservices and deploy them using Amazon ECS with an Auto Scaling group.
- C
Scale the existing EC2 instances vertically by upgrading their instance types to handle traffic spikes.
- D
Implement caching by integrating Amazon ElastiCache to reduce the load on the application database.
- E
Enable AWS Global Accelerator to improve performance for global users.
Show answer and explanation
Correct answers: B, D
Explanation
To address the application's performance and availability issues while adhering to the organization's goal of adopting a microservices architecture, refactoring the application into containerized microservices on Amazon ECS (Option 2) is a critical step. Additionally, implementing caching with Amazon ElastiCache (Option 4) reduces load on the database and enhances performance. Other options either involve significant re-architecture (Option 1), temporary fixes (Option 3), or do not directly address the traffic spikes or microservices goal (Option 5).
- A. Incorrect.
Migrating the monolithic application directly to AWS Lambda may not be feasible because it requires significant re-architecture and may not be suitable for all workloads. This is not the most practical solution for the given scenario.
- B. Correct.
Refactoring the monolithic application into containerized microservices and deploying them on Amazon ECS aligns with the organization's goal of adopting a microservices architecture. It also supports scaling and improves performance.
- C. Incorrect.
Scaling the existing EC2 instances vertically only addresses performance temporarily but does not align with the goal of adopting a microservices architecture.
- D. Correct.
Implementing caching using Amazon ElastiCache significantly reduces database load and improves application performance, making it a practical improvement for the existing solution.
- E. Incorrect.
AWS Global Accelerator improves performance for global users by routing traffic to the nearest AWS edge location. However, this does not directly address the application's periodic traffic spikes or the goal of transitioning to a microservices architecture.