exam questions

Exam AWS Certified Solutions Architect - Professional All Questions

View all questions & answers for the AWS Certified Solutions Architect - Professional exam

Exam AWS Certified Solutions Architect - Professional topic 1 question 74 discussion

You are migrating a legacy client-server application to AWS. The application responds to a specific DNS domain (e.g. www.example.com) and has a 2-tier architecture, with multiple application servers and a database server. Remote clients use TCP to connect to the application servers. The application servers need to know the IP address of the clients in order to function properly and are currently taking that information from the TCP socket. A Multi-AZ RDS MySQL instance will be used for the database.
During the migration you can change the application code, but you have to file a change request.
How would you implement the architecture on AWS in order to maximize scalability and high availability?

  • A. File a change request to implement Alias Resource support in the application. Use Route 53 Alias Resource Record to distribute load on two application servers in different Azs.
  • B. File a change request to implement Latency Based Routing support in the application. Use Route 53 with Latency Based Routing enabled to distribute load on two application servers in different Azs.
  • C. File a change request to implement Cross-Zone support in the application. Use an ELB with a TCP Listener and Cross-Zone Load Balancing enabled, two application servers in different AZs.
  • D. File a change request to implement Proxy Protocol support in the application. Use an ELB with a TCP Listener and Proxy Protocol enabled to distribute load on two application servers in different Azs.
Show Suggested Answer Hide Answer
Suggested Answer: D 🗳️
Reference:
https://aws.amazon.com/blogs/aws/elastic-load-balancing-adds-support-for-proxy-protocol/

Comments

Chosen Answer:
This is a voting comment (?). It is better to Upvote an existing comment if you don't have anything to add.
Switch to a voting comment New
tkanmani76
Highly Voted 3 years, 3 months ago
D is incorrect - it passes the Client IP part of header, when proxy protocol is enabled. How will this improve availability. C will help ensure the load is distributed across instance in different AZs.
upvoted 8 times
...
amministrazione
Most Recent 8 months, 3 weeks ago
D. File a change request to implement Proxy Protocol support in the application. Use an ELB with a TCP Listener and Proxy Protocol enabled to distribute load on two application servers in different Azs.
upvoted 1 times
...
Udyan
1 year, 7 months ago
options C and D are the most suitable for your requirements, but the final choice between them depends on your specific needs and whether preserving the client's original IP address is essential for your application. If preserving the client's IP address is a priority, then option D is a good choice. Otherwise, option C with Cross-Zone Load Balancing is a simpler and effective approach for load balancing and high availability.
upvoted 1 times
...
hobokabobo
2 years, 4 months ago
Selected Answer: D
I would go for D as this is what was designed with protocol: add a header with the client information. Now with that information preserved the ELB can distribute and forward traffic anywhere. Having at least two machines in two AZ: if one fails you still have the second plus different availability zone even if the whole availability zone fails, the service will be up. Also future scalability is addressed: as long as we can preserve the header we can think of any load balancer or proxy ... to spread load. One thing: I do not understand the change request in C. Why would they need cross zone support in the application? From the question I only find that application needs the client IP and need to reach the database which is multi AZ. So why can't application can be deployed in multiple az without modification? I see no reason for such support.
upvoted 1 times
...
TigerInTheCloud
2 years, 4 months ago
Selected Answer: C
"are currently taking that information from the TCP socket" and "During the migration you can change the application code" Before NLB is available, the choice is D. Now the better answer is C, no change of code, with client IP preserved (for target group type instance, or target group type IP with UDP_TCP listener)
upvoted 1 times
...
welcomeYM
2 years, 8 months ago
Selected Answer: C
cccccc
upvoted 1 times
...
cldy
3 years, 4 months ago
D. File a change request to implement Proxy Protocol support in the application. Use an ELB with a TCP Listener and Proxy Protocol enabled to distribute load on two application servers in different Azs.
upvoted 1 times
...
cldy
3 years, 7 months ago
D. Proxy Protocol to obtain the clients IP address if the ELB is configured for TCP load balancing. X-Forwarded-For headers to obtain the clients IP address if the ELB is configured for HTTP(s) load balancing.
upvoted 4 times
01037
3 years, 6 months ago
Yes, D
upvoted 1 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 ...
exam
Someone Bought Contributor Access for:
SY0-701
London, 1 minute ago