Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

aws ELB vs. ALB Review: Performance,Resiliancy

It has been almost a year since aws deployed the ALB.
There seems to be little to none technical comparison between the classic LB and the ALB.
The only thing that my research yielded is: aws forum question

While the above implies that ALB is not reliable it is only one source.
I am interested in knowing the experience of people who did the switch between ELB and ALB, mainly in regards to latency, resilience, HA.
It seems to me that Layer4 balancing is more robust than Layer7 and therefore the general performance would be better.

like image 361
seth Avatar asked May 04 '17 08:05

seth


People also ask

Should I use alb or ELB?

ELB only allows routing via a single port, while ALB supports distribution through multiple ports and lambda functions. Lambda functions enable users to manage and run various functions, build websites through serverless coding, and create customized ALB targets through serverless methods.

Which Load Balancers are required for extreme performance?

For network/transport protocols (layer4 – TCP, UDP) load balancing, and for extreme performance/low latency applications we recommend using Network Load Balancer. If your application is built within the Amazon Elastic Compute Cloud (Amazon EC2) Classic network, you should use Classic Load Balancer.

How can you use a load balancer to improve resilience?

By distributing this workload evenly, a load balancer can deliver several critical benefits to the organisation: Optimized application responsiveness and speed, with no bottlenecks slowing down traffic and end-user interactions.

What is the difference between ALB NLB and ELB and when or why would you choose one?

Network Load Balancer NLB natively preserves the source IP address in TCP/UDP packets; in contrast, ALB and ELB can be configured to add additional HTTP headers with forwarding information, and those have to be parsed properly by your application.


1 Answers

I would like to provide my experience here, but I am not going into very detail. Basically my company has over 200k devices on the field actively connecting our backend via websocket. We were using ELB in front our servers and it was working quite well, all the connections were quite stable. We tried to switch ELB to ALB before, but the result wasn't really good and we switched back.

The main problem we found the connections were dropped suddenly (with a pattern like every 15 hrs?). Please check the graph of number of connections I captured from the monitoring system: active number of connections

As you can see there are some dips in the graph which showing the connections have be dropped. I keep the same server setup, only factor I have changed is from ELB to ALB and got this result.

like image 102
Matthew Lai Avatar answered Oct 30 '22 11:10

Matthew Lai