Quale algoritmo utilizza Amazon ELB per bilanciare il carico?


13

L'ho trovato nella documentazione ufficiale ELB

Per impostazione predefinita, un bilanciamento del carico indirizza ciascuna richiesta in modo indipendente all'istanza dell'applicazione con il carico più piccolo.

ma un articolo su Newvem afferma che ELB supporta solo l'algoritmo Round Robin

Algoritmi supportati da Amazon ELB - Attualmente Amazon ELB supporta solo Round Robin (RR) e Session Sticky Algorithms.

Quindi quale è?

[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


1
Andrei con i documenti ufficiali oltre un anno, senza risorse su un blog a caso, a meno che non venga dato un motivo per credere diversamente. Si noti, tuttavia, che "l'istanza con il carico minimo" si applicherebbe solo a una particolare zona: se si dispone di un'istanza nella zona A e due nella zona B, la console AWS avvisa che le richieste saranno sbilanciate.
Ceejayoz,

"Si noti, tuttavia, che" l'istanza con il carico minimo "si applicherebbe solo a una zona particolare" <È menzionata nella documentazione ufficiale da qualche parte?
kn330,

Sono sicuro che è menzionato da qualche parte, ma è sicuramente menzionato nella console AWS quando aggiungi istanze a un ELB. Ecco uno screenshot: cl.ly/image/251m3g1b0E1n
ceejayoz

Abdul, per favore, accetta la risposta corretta, che è CrizCraig.
tedder42,

Risposte:


14

È il conteggio delle richieste basato su HTTP (S), round robin per altri.

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

Prima che un client invii una richiesta al bilanciamento del carico, risolve innanzitutto il nome di dominio del bilanciamento del carico con i server DNS (Domain Name System). Il server DNS utilizza il round robin DNS per determinare quale nodo del bilanciamento del carico in una zona di disponibilità specifica riceverà la richiesta.

Il nodo di bilanciamento del carico selezionato invia quindi la richiesta a istanze integre all'interno della stessa zona di disponibilità. Per determinare le istanze integre, il nodo di bilanciamento del carico utilizza l'algoritmo di routing round robin (per connessioni TCP) o la richiesta meno rilevante (per connessioni HTTP / HTTPS). L'algoritmo di routing delle richieste meno eccezionale favorisce le istanze di back-end con il minor numero di connessioni o richieste in sospeso.


2
Questa informazione è leggermente obsoleta. Il bilanciamento del carico invierà la richiesta a istanze integre all'interno della stessa zona di disponibilità se la funzionalità tra zone è disattivata. L'impostazione predefinita per la funzionalità cross-zone è abilitata, pertanto il bilanciamento del carico invierà una richiesta a qualsiasi istanza integra registrata nel bilanciamento del carico utilizzando le richieste meno rilevanti per HTTP / HTTPS e round-robin per le connessioni TCP.
ColtonCat,

Hey @ColtonCat puoi per favore collegare la fonte per le informazioni
murarisumit


2

Dipende dal tipo di ELB utilizzato. Nel tempo AWS ha introdotto Application ELB e Network ELB insieme a Classic ELB.

Application Load Balancersapplica le regole del listener e assegna la richiesta (HTTP / HTTPS) a un gruppo target. Seleziona un target da quel gruppo target usando ilround robin routing algorithm

Network Load Balancers nodo che riceve la connessione, seleziona un target dal suo gruppo target usando a flow hash routing algorithm

Classic Load Balancersutilizza round robin routing algorithmper i listener TCP e least outstanding requests routing algorithmper i listener HTTP e HTTPS

.

TLDR;

I moderni ELB utilizzano round robin routing algorithmper le richieste HTTP / HTTPS e flow hash routing algorithmper le richieste TCP.

ELB classico utilizzato round robin routing algorithmper richieste TCP e richieste least outstanding requests routing algorithmHTTP e HTTPS

Fonte / Ulteriori letture: https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/how-elastic-load-balancing-works.html#routing-algorithm

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.