Q15 — AWS SAA-C03 Ch.5

Question 15 of 65 | ← Chapter 5

Q315. A solutions architect is implementing a complex Java application with a MySQL database. The Java application must be deployed on Apache Tomcat and must be highly available. What should the solutions architect do to meet these requirements?

Correct Answer: B. Deploy the application by using AWS Elastic Beanstalk. Configure a load-balanced environment and a rolling deployment policy

Explanation

The solution that would meet the requirements of implementing a complex Java application with a MySQL database, deployed on Apache Tomcat and highly available, is option B: Deploy the application using AWS Elastic Beanstalk. Configure a load-balanced environment and a rolling deployment policy. AWS Elastic Beanstalk provides a fully managed platform for deploying web applications. By using Elastic Beanstalk, you can quickly deploy and manage your Java application without having to worry about the underlying infrastructure. You can also take advantage of features such as auto-scaling, which ensures that your application can handle varying levels of traffic.In this scenario, configuring a load-balanced environment in Elastic Beanstalk ensures that the application is highly available by distributing traffic across multiple instances. Additionally, a rolling deployment policy will help ensure zero downtime when deploying new versions of the application. Option A (deploy the application in AWS Lambda) is not suitable for a complex Java application that requires Apache Tomcat and a MySQL database. AWS Lambda is designed for serverless computing and has limitations on the amount of memory it can use and the length of time it can run. It is not well-suited for long-running applications or those with a persistent state. Option C (migrate the database to Amazon ElastiCache) is not appropriate for running a MySQL database. Amazon ElastiCache supports only Redis and Memcached engines. Option D (launch an Amazon EC2 instance, install a MySQL server and configure the application) is possible but requires more management overhead compared to Elastic Beanstalk. This solution does not provide automatic scaling and requires manual intervention to keep the application highly available.