Bird
Raised Fist0
AWScloud~5 mins

Why load balancing matters in AWS - Performance Analysis

Choose your learning style10 modes available
Time Complexity: Why load balancing matters
O(n)
Understanding Time Complexity

We want to understand how the work done by load balancers changes as more users or requests come in.

How does the number of requests affect the load balancer's operations?

Scenario Under Consideration

Analyze the time complexity of the following operation sequence.


// Create a load balancer
aws elbv2 create-load-balancer --name my-load-balancer --subnets subnet-12345 subnet-67890

// Register targets (servers) to the load balancer
aws elbv2 register-targets --target-group-arn arn:aws:elasticloadbalancing:... --targets Id=i-1234567890abcdef0 Id=i-0abcdef1234567890

// Incoming requests are distributed by the load balancer
// Each request is routed to one of the registered targets
    

This sequence sets up a load balancer and registers servers to handle incoming requests evenly.

Identify Repeating Operations
  • Primary operation: Routing each incoming request to a target server.
  • How many times: Once per incoming request.
How Execution Grows With Input

As the number of requests grows, the load balancer routes each one individually.

Input Size (n)Approx. API Calls/Operations
1010 routing operations
100100 routing operations
10001000 routing operations

Pattern observation: The number of routing operations grows directly with the number of requests.

Final Time Complexity

Time Complexity: O(n)

This means the work the load balancer does grows in a straight line as requests increase.

Common Mistake

[X] Wrong: "The load balancer handles all requests at once, so time stays the same no matter how many requests come in."

[OK] Correct: Each request needs to be routed separately, so more requests mean more work.

Interview Connect

Understanding how load balancers handle growing traffic helps you design systems that stay fast and reliable as more people use them.

Self-Check

"What if the load balancer had to check the health of each target before routing every request? How would the time complexity change?"

Practice

(1/5)
1. What is the main purpose of a load balancer in AWS?
easy
A. To create backups of servers automatically
B. To store user data securely
C. To distribute incoming traffic evenly across multiple servers
D. To monitor server CPU usage only

Solution

  1. Step 1: Understand load balancer role

    A load balancer shares user traffic across servers to keep apps fast and reliable.
  2. Step 2: Identify main function

    Its main job is to distribute incoming traffic evenly to avoid overloading one server.
  3. Final Answer:

    To distribute incoming traffic evenly across multiple servers -> Option C
  4. Quick Check:

    Load balancer = distribute traffic [OK]
Hint: Load balancer spreads traffic to avoid overload [OK]
Common Mistakes:
  • Confusing load balancer with data storage
  • Thinking it only monitors CPU
  • Assuming it creates backups
2. Which AWS service is used to create a load balancer?
easy
A. Amazon S3
B. Elastic Load Balancing (ELB)
C. Amazon RDS
D. AWS Lambda

Solution

  1. Step 1: Identify AWS services

    Amazon S3 stores files, RDS manages databases, Lambda runs code, ELB manages load balancing.
  2. Step 2: Match service to load balancing

    Elastic Load Balancing (ELB) is the AWS service designed to create load balancers.
  3. Final Answer:

    Elastic Load Balancing (ELB) -> Option B
  4. Quick Check:

    Load balancer service = ELB [OK]
Hint: ELB is the AWS load balancer service name [OK]
Common Mistakes:
  • Choosing storage or compute services instead of ELB
  • Confusing Lambda with load balancing
  • Selecting database services
3. Given this AWS setup code snippet, what does the load balancer do?
LoadBalancer -> TargetGroup -> EC2 Instances
Listener listens on port 80 and forwards to TargetGroup
medium
A. It forwards traffic on port 80 to all EC2 instances evenly
B. It blocks traffic on port 80
C. It stores data from EC2 instances
D. It only forwards traffic to one EC2 instance

Solution

  1. Step 1: Understand listener role

    The listener listens on port 80 and forwards requests to the target group.
  2. Step 2: Understand target group role

    The target group contains multiple EC2 instances and the load balancer distributes traffic evenly among them.
  3. Final Answer:

    It forwards traffic on port 80 to all EC2 instances evenly -> Option A
  4. Quick Check:

    Listener + TargetGroup = distribute traffic [OK]
Hint: Listener forwards traffic evenly to all targets [OK]
Common Mistakes:
  • Thinking it blocks traffic
  • Assuming it stores data
  • Believing it sends traffic to only one instance
4. You set up a load balancer but all traffic goes to a single server. What is the likely mistake?
medium
A. Security group blocks all traffic
B. Listener is set to forward on wrong port
C. Load balancer is not created
D. Target group has only one instance registered

Solution

  1. Step 1: Check target group configuration

    If only one instance is registered in the target group, all traffic goes to that instance.
  2. Step 2: Verify listener and load balancer existence

    Listener forwarding on wrong port or missing load balancer would cause no traffic or errors, not single server traffic.
  3. Final Answer:

    Target group has only one instance registered -> Option D
  4. Quick Check:

    Single server traffic = one target instance [OK]
Hint: Check target group instance count first [OK]
Common Mistakes:
  • Assuming listener port causes single server traffic
  • Thinking load balancer absence sends traffic
  • Blaming security group for traffic routing
5. You want to handle sudden traffic spikes without slowing your app. Which load balancing setup helps best?
hard
A. Use a load balancer with multiple target groups and auto-scaling EC2 instances
B. Use a single EC2 instance behind a load balancer
C. Use only one target group with fixed number of instances
D. Disable load balancer and rely on DNS round robin

Solution

  1. Step 1: Understand traffic spike handling

    Handling spikes requires scaling resources automatically to meet demand.
  2. Step 2: Match setup to scaling needs

    Using a load balancer with multiple target groups and auto-scaling EC2 instances allows dynamic resource adjustment and balanced traffic.
  3. Final Answer:

    Use a load balancer with multiple target groups and auto-scaling EC2 instances -> Option A
  4. Quick Check:

    Auto-scaling + load balancer = handle spikes [OK]
Hint: Combine load balancer with auto-scaling for spikes [OK]
Common Mistakes:
  • Relying on single instance for heavy traffic
  • Using fixed instances without scaling
  • Disabling load balancer reduces reliability
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard