Thursday 11 April 2019

Application Load Balancer Vs. Classic Load Balancer

Elastic Load Balancing automatically divides incoming application traffic over different targets, like Amazon EC2 instances, containers, IP addresses, and Lambda functions. It can manage the differing load of your application traffic in one Availability Zone or over different Availability Zones. Elastic Load Balancing offers three types of load balancers which all presents the high availability, automatic scaling, and robust security required to make your applications defect liberal.

Let's compare Application Load Balancers and Classic Load Balancers,


  • Classic Load Balancer



  • Application Load Balancer


1. Usage Pattern

  • A Classic Load Balancer is employed for simple load balancing of traffic across multiple EC2 instances.
  • Application Load Balancer is employed for microservices or container-based architectures where there is a need to route traffic to multiple services or load balance across multiple ports on the same EC2 instance.

2. Supported Protocols

  • Classic Load Balancer work at layer 4 and supports HTTP, HTTPS, TCP, SSL
  • Application Load Balancer work at layer 7 and supports HTTP, HTTPS, HTTP/2, WebSockets

3. Supported Platforms

  • Classic Load Balancer supports both EC2-Classic and EC2-VPC
  • Application Load Balancer supports only EC2-VPC

4. Back-end Server Authentication
  • Back-end Server Authentication allows authentication of the instances. Load balancer communicates with associate instance provided that the general public key that the instance presents to the load balancer matches a public key within the authentication policy for the load balancer. Classic Load Balancer supports whereas Application Load Balancer doesn't support Back-end Server Authentication

5. Back-end Server Authentication
  • Back-end Server Authentication allows authentication of the instances. Load balancer communicates with associate instance provided that the general public key that the instance presents to the load balancer matches a public key within the authentication policy for the load balancer. Classic Load Balancer supports whereas Application Load Balancer doesn't support Back-end Server Authentication.

5.1 Cross-zone Load Balancing
  • Cross-zone Load equalization facilitate distribute incoming requests equally across all instances in its enabled AZs. By default, Load Balancer can equally distribute requests evenly across its enabled AZs, no matter the instances it hosts.
    1. Classic Load Balancer support Cross-zone load balancing, but for Classic it should be enabled.
    2. Application Load Balancer support Cross-zone load balancing but for ALB it is always enabled.

5.2 Health Checks
  • Both Classic & Application Load Balancer each support Health checks to manage if the instance is healthy or unhealthy.

5.3 CloudWatch Metrics
  • Both Classic & Application Load Balancer integrate with CloudWatch to produce metrics, with ALB providing additional metrics.

5.4 Access Logs
  • Access logs capture detailed information about requests sent to the load balancer. Every log contains information like the time the request was received, the client’s IP address, latencies, request ways, and server responses.
    1. Classic Load Balancer provide access logs.
    2. Application Load Balancer also provide access logs with providing additional attributes

6. Dynamic Ports
  • Classic load balancer does not support the dynamic port Mapping with ECS.
  • ALB support the dynamic port Mapping with ECS which permit two containers of a service to run on a one server on dynamic ports that ALB automatically detects and reconfigures itself.

7. Host-Based Routing & Path-Based Routing
  • Host-based Routing : Use host conditions to outline rules that forward requests to totally different target group supported the host name within the host header. This allows ALB to support multiple domains employing a single load balancer.
  • Path-based Routing : Use path conditions to outline rules that forward requests to completely different target group supported the universal resource locator within the request. Every path condition has one path pattern. If the universal resource locator (URL) in an exceedingly request matches the trail pattern in a listener rule specifically, the request is routed victimization that rule.
    1. Classic load balancer does not supports Host-based & Path-based routing.
    2. Application load balancer supports Host-based & Path-based routing.

8. Deletion Protection
  • Classic load balancer does not support deletion protection.
  • Load balancer could not be deleted if we enabled the deletion protection. ALB Support deletion protection.
 
If you have any queries related to Elastic Load Balancing or its types, then write us at sales@cloud.in 

No comments:

Post a Comment

Maximizing Content Delivery Efficiency: Optimizing Performance in AWS CloudFront

  Unleash Blazing-Fast Content Delivery: Your Guide to CloudFront Optimization Introduction: AWS CloudFront stands as a cornerstone of moder...