Amazon ELB使用什么algorithm来平衡负载?

我在正式的ELB文档中find了这个

缺省情况下,负载均衡器将每个请求独立路由到负载最小的应用程序实例。

但是Newvem上的一篇文章说ELB只支持Round Robinalgorithm

Amazon ELB支持的algorithm – 目前Amazon ELB仅支持循环(RR)和会话粘性algorithm。

那么哪一个呢?

[1] http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/US_StickySessions.html

[2] http://www.newvem.com/dissecting-amazon-elastic-load-balancer-elb-18-facts-you-should-know/?lead_source=popup_ebook&oid=00DD0000000lsYR&email=muneeb%40olacabs.com

    它是基于HTTP(S)的请求计数,其他的循环。

    http://docs.aws.amazon.com/ElasticLoadBalancing/latest/DeveloperGuide/TerminologyandKeyConcepts.html#request-routing

    在客户端向您的负载均衡器发送请求之前,它首先使用域名系统(DNS)服务器parsing负载均衡器的域名。 DNS服务器使用DNS轮询来确定特定可用区中的哪个负载均衡器节点将接收请求。

    所选的负载均衡器节点然后将请求发送到同一可用区内的正常实例。 为了确定正常的实例,负载均衡器节点使用循环(用于TCP连接)或最不重要的请求(用于HTTP / HTTPS连接)路由algorithm。 最不重要的请求路由algorithm支持具有最less连接或未完成请求的后端实例。

    这取决于所使用的ELBtypes。 AWS一直在推出应用ELB和networkingELB以及经典ELB。

    Application Load Balancers应用侦听器规则并将(HTTP / HTTPS)请求分配给目标组。 它使用round robin routing algorithm从目标组中select一个目标

    接收连接的Network Load Balancers节点使用flow hash routing algorithm从目标组中select一个目标

    Classic Load Balancers使用TCP侦听Classic Load Balancers round robin routing algorithm和HTTP和HTTPS侦听器的least outstanding requests routing algorithm

    TLDR;

    现代的ELB使用round robin routing algorithm来处理HTTP / HTTPS请求,并使用flow hash routing algorithm来处理TCP请求。

    经典的ELB对于TCP请求使用round robin routing algorithm ,对于HTTP和HTTPS请求使用least outstanding requests routing algorithm

    来源/进一步阅读: http : //docs.aws.amazon.com/elasticloadbalancing/latest/userguide/how-elastic-load-balancing-works.html