Welcome to ExamTopics
ExamTopics Logo
- Expert Verified, Online, Free.

Unlimited Access

Get Unlimited Contributor Access to the all ExamTopics Exams!
Take advantage of PDF Files for 1000+ Exams along with community discussions and pass IT Certification Exams Easily.

Exam AWS Certified Solutions Architect - Associate SAA-C03 topic 1 question 143 discussion

A company wants to migrate its existing on-premises monolithic application to AWS. The company wants to keep as much of the front-end code and the backend code as possible. However, the company wants to break the application into smaller applications. A different team will manage each application. The company needs a highly scalable solution that minimizes operational overhead.
Which solution will meet these requirements?

  • A. Host the application on AWS Lambda. Integrate the application with Amazon API Gateway.
  • B. Host the application with AWS Amplify. Connect the application to an Amazon API Gateway API that is integrated with AWS Lambda.
  • C. Host the application on Amazon EC2 instances. Set up an Application Load Balancer with EC2 instances in an Auto Scaling group as targets.
  • D. Host the application on Amazon Elastic Container Service (Amazon ECS). Set up an Application Load Balancer with Amazon ECS as the target.
Show Suggested Answer Hide Answer
Suggested Answer: D 🗳️

Comments

Chosen Answer:
This is a voting comment (?) , you can switch to a simple comment.
Switch to a voting comment New
Ken701
Highly Voted 1 year, 8 months ago
I think the answer here is "D" because usually when you see terms like "monolithic" the answer will likely refer to microservices.
upvoted 35 times
...
Bevemo
Highly Voted 1 year, 8 months ago
Selected Answer: D
D is organic pattern, lift and shift, decompose to containers, first making most use of existing code, whilst new features can be added over time with lambda+api gw later. A is leapfrog pattern. requiring refactoring all code up front.
upvoted 20 times
...
ManikRoy
Most Recent 2 months ago
Selected Answer: B
Amazon API Gateway and Amplify both server less. Also you can import your code from GitHub in the amplify.
upvoted 1 times
ManikRoy
2 months ago
Option D does not mention AWS Fargate which would cover the 'least operational overhead ' part.
upvoted 1 times
...
...
ManikRoy
2 months ago
The company wants to keep much of its existing code. So the preferable solution is ECS. However the option D does not mention AWS Fargate which would cover the 'least operational overhead ' part.
upvoted 1 times
...
jbkrishna
3 months, 2 weeks ago
Different teams working means " microservices based architecture" so basically decoupling the application ..u can achieve this only by containerizing the app so answer is D
upvoted 1 times
...
NayeraB
4 months, 3 weeks ago
Selected Answer: B
B allows for a serverless architecture using AWS Lambda functions, which are highly scalable and require minimal operational overhead. AWS Amplify can help in managing the front-end code, while Amazon API Gateway integrated with AWS Lambda can handle the backend services. D imo is not the best option in this scenario. While ECS can be a good choice for containerized workloads, it might introduce more operational overhead compared to a serverless solution like AWS Lambda and AWS Amplify.
upvoted 4 times
...
awsgeek75
5 months, 3 weeks ago
Selected Answer: D
I have a problem with this question. "The company wants to keep as much of the front-end code and the backend code as possible" So containerization is the solution here (D)? ABC don't make much sense so I will go with D but using containers for FE/BE code and configuring ALB for ECS (hopefully for frontend containers) is a pain in practice. Maybe this is worded in a bad way.
upvoted 3 times
...
vip2
5 months, 3 weeks ago
Selected Answer: B
Original state: monolithic with FE and BE code Wanted state: seperate to mutilple components for diff. teams as Microservices B is correct to decouple monolithic to microservices. D still keep monolithic application in ECS.
upvoted 3 times
...
06042022
6 months ago
IT is B. AWS amplify. AWS Amplify will help seperate FE and BE. I agree with MM_Korvinus answer.
upvoted 2 times
...
JTruong
6 months, 1 week ago
Selected Answer: D
https://aws.amazon.com/tutorials/break-monolith-app-microservices-ecs-docker-ec2/module-three/ This page explained clearly why D is the correct answer
upvoted 2 times
...
TariqKipkemei
10 months ago
Selected Answer: D
'Non-monolithic', 'smaller applications', 'minimized operational overhead' all screaming 'microservices'.
upvoted 4 times
...
Guru4Cloud
10 months, 3 weeks ago
Selected Answer: D
The reasons are: ECS allows running Docker containers, so the existing monolithic app can be containerized and run on ECS with minimal code changes. The app can be broken into smaller microservices by containerizing different components and managing them separately. ECS provides auto scaling capabilities to scale each microservice independently. Using an Application Load Balancer with ECS enables distributing traffic across containers and auto scaling. ECS has minimal operational overhead compared to managing EC2 instances directly. Serverless options like Lambda and API Gateway would require significant code refactoring which is not ideal for migrating an existing app.
upvoted 5 times
...
MM_Korvinus
11 months ago
Selected Answer: B
Honestly, from my experience, the minimal operational overhead is with Amplify and API Gateway with lambdas. Both services have neat release features, you do not need to fiddle around ECS configurations as everything is server-less, which is also highly scalable. Eventhough it is much harder to refactor monolithic app to this set-up it is definitely easier to operate. Not talking about complexities around ALB.
upvoted 9 times
Fielies23
11 months ago
I actually agree with this, they have a monolithic application that contains the Front-end and Back-end. They clearly state they want different teams managing different applications. This is telling me they want a team to manage the front-end and a team to manage the back-end. A,C and D suggest simply running copies of the monolith application (containing front and back end). So how will different teams manage different applications?? B is the only one that actually splits front and back end
upvoted 1 times
...
pentium75
6 months, 1 week ago
How do you want to run a "monolithic application" in Lambda?
upvoted 2 times
...
...
cookieMr
1 year ago
Selected Answer: D
ECS provides a highly scalable and managed environment for running containerized applications, reducing operational overhead. By setting up an ALB with ECS as the target, traffic can be distributed across multiple instances of the application for scalability and availability. This solution enables different teams to manage each application independently, promoting team autonomy and efficient development. A is more suitable for event-driven and serverless workloads. It may not be the ideal choice for migrating a monolithic application and maintaining the existing codebase. B integrates with Lambda and API Gateway, it may not provide the required flexibility for breaking the application into smaller applications and managing them independently. C would involve managing the infrastructure and scaling manually. It may result in higher operational overhead compared to using a container service like ECS.
upvoted 2 times
...
antropaws
1 year, 1 month ago
Selected Answer: D
I was confused about this, but actually Amazon ECS service can be configured to use Elastic Load Balancing to distribute traffic evenly across the tasks in your service. https://docs.aws.amazon.com/AmazonECS/latest/userguide/create-application-load-balancer.html
upvoted 1 times
...
studynoplay
1 year, 1 month ago
Selected Answer: D
monolithic = microservices = ECS
upvoted 4 times
...
C_M_M
1 year, 2 months ago
I thought ALB is about distributing load. How do we want to use it to connect decoupled applications that needs to call themselves. I am kind of confused why most people are going with D. I think I will go with A.
upvoted 2 times
...
Community vote distribution
A (35%)
C (25%)
B (20%)
Other
Most Voted
A voting comment increases the vote count for the chosen answer by one.

Upvoting a comment with a selected answer will also increase the vote count towards that answer by one. So if you see a comment that you already agree with, you can upvote it instead of posting a new comment.

SaveCancel
Loading ...
ex Want to SAVE BIG on Certification Exam Prep?
close
ex Unlock All Exams with ExamTopics Pro 75% Off
  • arrow Choose From 1000+ Exams
  • arrow Access to 10 Exams per Month
  • arrow PDF Format Available
  • arrow Inline Discussions
  • arrow No Captcha/Robot Checks
Limited Time Offer
Ends in