ALB Least Outstanding Requests Routing Algorithm
Short answer
B Use the least outstanding requests algorithm based on the RequestCountPerTarget and ActiveConnectionCount CloudWatch metrics.
Question
Key Takeaways
The question tests the understanding of ALB routing algorithms and the difference between aggregate vs. per-target CloudWatch metrics, specifically avoiding the trap of using RequestCount instead of RequestCountPerTarget.
This page explains how to configure Amazon Application Load Balancer (ALB) to distribute traffic efficiently using the least outstanding requests routing algorithm and specific CloudWatch metrics.
Common mistake: Many learners choose D because they recognize 'least outstanding requests' but incorrectly select 'RequestCount', which is an aggregate metric for the entire load balancer, not individual targets.
Expert Analysis
Why the Answer Is Correct
The correct answer is B. The scenario describes a need to prevent overloaded instances from receiving new requests by analyzing performance differences between instances. The 'Least Outstanding Requests' routing algorithm is designed exactly for this purpose; it routes traffic to the target with the fewest in-flight requests. To make this decision effectively, the ALB needs metrics that reflect the state of each individual instance. 'RequestCountPerTarget' provides the number of requests processed by each target, allowing the ALB to identify which instances are currently busier than others.
Why the Other Options Are Wrong
Options A and C use the 'Round Robin' algorithm, which distributes requests evenly regardless of the current load on the instances. This contradicts the requirement to avoid sending traffic to already overloaded instances. Option D uses the correct algorithm ('Least Outstanding Requests') but pairs it with the wrong metric ('RequestCount'). As noted in community comments like "RequestCount applies to the ALB rather than individual targets" (FlyingHawk), RequestCount is an aggregate metric and cannot help the ALB distinguish between overloaded and underloaded instances.
Community Comment Notes
Community consensus strongly favors B. User h0ng97_spare_002 correctly identified that RequestCountPerTarget is necessary to identify the amount of requests for each EC2 instance. Another commenter, FlyingHawk, highlighted that Option D is incorrect because RequestCount is unsuitable for identifying overloaded instances as it applies to the whole ALB. While some users initially debated D, the distinction between aggregate and per-target metrics was the deciding factor for most.
Official Reference
- https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html
- https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html
These links open the official vendor documentation in a new tab.
Exam Strategy
Always check if the required metric is available at the target level or only at the load balancer level. If you need to make decisions based on individual instance health or load, ensure the metric name includes 'PerTarget'.
Frequently Asked Questions
Why is RequestCount not suitable for this scenario?
When should I use Least Outstanding Requests over Round Robin?
Community Votes
83% of anonymous learners picked answer B. Votes are pick records left by other test-takers — they are not the verified answer.
Discussion 15 contributions
Compiled from public community threads and reader submissions, lightly edited for clarity. Handles and vote tallies are shown as recorded, and comments reflect the views of individual contributors.
From public community threads 15
-
h0ng97_spare_002 👍 11 Answered BOption B is correct because can use "RequestCountPerTarget" to identify the amount of requests for each EC2 instance. Then use "least outstanding requests algorithm" to route to targets with the lowest number of in progress requests. Option D is wrong because "RequestCount" cannot identify the amount of requests for each EC2 instance. "RequestCount" is for the whole ALB.
-
Andy_09 👍 8Option B would be the correct choice
-
Kezuko 👍 4 Answered Bhttps://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-cloudwatch-metrics.html To understand the types
-
osmk 👍 3 Answered DThe least outstanding requests routing algorithm routes requests to the targets with the lowest number of in progress requests > https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html
-
haci 👍 3 Answered BThe question is not asking for better performance in response time. It is just simply asking to distribute the number of requests among instances. So B seems more logical.
Show 10 more comments
-
dkw2342 👍 2IMO the correct answer is option D: This is from an earlier version of the AWS documentation on ALB target groups - for some reason they removed this information in the current revision: "Consider using least outstanding requests when the requests for your application vary in complexity or your targets vary in processing capability. Round robin is a good choice when the requests and targets are similar, or if you need to distribute requests equally among targets. You can compare the effect of round robin versus least outstanding requests using the following CloudWatch metrics: RequestCount, TargetConnectionErrorCount, and TargetResponseTime." https://web.archive.org/web/20200426172626/https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html#modify-routing-algorithm
-
alawada 👍 2 Answered Bdistribute the number of requests among instances
-
FlyingHawk 👍 1 Answered BD will be correct if change ReqeustCount to RequestCountPerTarget. RequestCount applies to the ALB rather than individual targets, making it unsuitable for identifying overloaded instances. ActiveConnectionCount: This metric indicates the current number of active TCP connections. It complements RequestCountPerTarget by helping identify instances that might be overwhelmed with connections, even if their request count seems moderate.
-
osmk 👍 1D>>> The least outstanding requests routing algorithm routes requests to the targets with the lowest number of in progress requests > https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html
-
xBUGx 👍 1 Answered DI think TargetResponseTime is the best indicator for telling is a server is overloaded or not
-
sk1974 👍 1 Answered DI will go with D since the question asks for the target response.
-
sk1974 👍 1 Answered BActually ,I now vote for B and not D
-
TruthWS 👍 3Option B
-
Moon239 👍 2Why not D?
-
Scheldon 👍 2 Answered BAnswerB
Reader comments & corrections
No reader corrections yet — spotted an error or have a note? Share it below.
Related Analysis
Practice All SAA-C03 Questions
Access 120 questions with complete answers and detailed explanations.
View Full SAA-C03 Practice Test →