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

Exam AWS Certified Solutions Architect - Associate SAA-C03 All Questions

View all questions & answers for the AWS Certified Solutions Architect - Associate SAA-C03 exam

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 2 years ago
I think the answer here is "D" because usually when you see terms like "monolithic" the answer will likely refer to microservices.
upvoted 37 times
...
Bevemo
Highly Voted 2 years 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 21 times
...
PaulGa
Most Recent 1 month ago
Selected Answer: D
Ans D - hint: "...break the application into smaller applications"
upvoted 3 times
...
PaulGa
2 months ago
Selected Answer: D
Ans D - hint: "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." Containerisation will help the company achieve a scaleable, more manageable solution.
upvoted 2 times
...
pedro_vieira
4 months ago
For the folks suggesting Amplify: Have any of you actually shipped anything on Amplify? There are tons of adaptations needed to port a monolith to Amplify, specially around the backend that will need severe refactor. Answer D allows for decomposing the application into different containers, enabling a distributed monolith.
upvoted 3 times
...
ManikRoy
6 months, 2 weeks ago
Selected Answer: B
Amazon API Gateway and Amplify both server less. Also you can import your code from GitHub in the amplify.
upvoted 2 times
ManikRoy
6 months, 2 weeks ago
Option D does not mention AWS Fargate which would cover the 'least operational overhead ' part.
upvoted 1 times
...
...
ManikRoy
6 months, 2 weeks 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 2 times
...
jbkrishna
8 months, 1 week 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 3 times
...
NayeraB
9 months, 1 week 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
10 months, 1 week 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 5 times
...
vip2
10 months, 1 week 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
10 months, 3 weeks ago
IT is B. AWS amplify. AWS Amplify will help seperate FE and BE. I agree with MM_Korvinus answer.
upvoted 2 times
...
JTruong
10 months, 3 weeks 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 3 times
...
TariqKipkemei
1 year, 2 months ago
Selected Answer: D
'Non-monolithic', 'smaller applications', 'minimized operational overhead' all screaming 'microservices'.
upvoted 5 times
...
Guru4Cloud
1 year, 3 months 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 6 times
...
MM_Korvinus
1 year, 3 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
1 year, 3 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
11 months ago
How do you want to run a "monolithic application" in Lambda?
upvoted 2 times
...
...
cookieMr
1 year, 5 months 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 3 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 ...