If I use the Azure Load Balancer in front of a set of Web Roles then the default behavior is that a hashing mechanism is used to determine which machine an incoming HTTP request should be routed to. This hashing mechanism takes source IP, source port, destination
IP, destination port, protocol type into account.
This means that regardless of number of web servers in my cluster, a single connecting client can place very high load on a specific web server, making the web application unusable for all other clients which ends up on that specific server. In other
words, the load balancer does not attempt to distribute actual requests in a balanced way - only the clients connecting.
Why have this method of distributing load been chosen over a plain round-robin where each server can be more or less guaranteed equal number of incoming requests? Is there a way to configure the load balancer to use round-robin instead?
Nitramafve