2

Kann mir jemand erklären, was mit meinem AWS Load Balancer passiert?Load Balancer Überwachung Überspannungswarteschlangenlänge

ich die Metrik Surge Queue Length mit zwei Linien wachsen „zusammen“ in kumulativer Weise sehen: Surge Queue Length

Aus der Dokumentation heißt es, dass dies die Warteschlange der Anforderungen auf dem Load Balancer ist zu sein Vom Backend (EC2-Instanz) verarbeitet und alle gefundenen Fehlerbehebungen weisen auf ein Performance-Problem im Backend hin, aber in meinem Fall ist die Instanz fehlerfrei (CPU, Speicher, Festplatten-I/O, usw.) fein).

Dieser Load Balancer gehört zu einer Elastic Beanstalk-Arbeitsumgebung mit nur einer Instanz. Und jedes Mal, wenn ich eine neue Version bereitstelle, scheint die Überspannungswarteschlangenlänge gelöscht zu werden.

Kann mir jemand erklären, warum diese kumulative Warteschlange wächst, auch wenn meine Backend-Instanz in Ordnung ist? Und warum wird dies bei der Bereitstellung bereinigt?

Antwort

1

Auch wenn die EC2-Instanz im Back-End in Ordnung ist (CPU, Speicher, Festplatte usw.), könnte sie bei der Verarbeitung der vom ELB gesendeten Anfragen zurückbleiben. Dies kann passieren, wenn (wie in meinem Fall) der EC2 unter einer Elastic Beanstalk-Umgebung mit Docker läuft, wobei die EC2-Instanz nur einen Docker-Container ausführen kann. In diesem Fall kann der Docker-Container, auf dem die App ausgeführt wird, nicht alle eingehenden Anforderungen verarbeiten, da er sich jedoch in einer isolierten Umgebung (dem Container) befindet, können nicht alle verfügbaren Ressourcen in der EC2-Instanz verwendet werden.

In meinem Fall musste ich meine EC2-Instanzen innerhalb der Autoscaling-Gruppe (hinter dem ELB) vergrößern, selbst wenn meine EC2-Instanzen melden, dass sie 5% CPU verwenden. Nach dem Hochskalieren (CPU-Auslastung ging auf 1% zurück) gingen meine Leistungsprobleme verloren.

Hoffe, das hilft

+0

Ok, ich bin nicht Docker laufen, aber es kann Puma die Ressourcenauslastung begrenzen. Und was ist die Erklärung dafür, dass diese zwei "Linien von Punkten" zusammenwachsen? –

+0

@ JonathasHortense AWS ELB ist eine Blackbox und ich arbeite nicht für Amazon/AWS. Meine Spekulation ist, dass die zwei Linien von Punkten den zwei ELB-Servern entsprechen. Da die Verarbeitung der Anfrage zurückliegt, könnte es sein, dass die beiden ELB-Server unterschiedliche Überspannungswarteschlangenlängen haben. Warum denke ich, dass der ELB zwei Server hat? 1. Wenn Sie ein nslookup auf dem ELB-DNS ausführen, erhalten Sie zwei A-Datensätze (zwei IPs) zurück 2. Ein Server würde keine Redundanz bereitstellen 3. Drei oder mehr Server würden einen komplexeren Lastenausgleich über die ELB-Server erfordern (Wer wird den Lastenausgleich ausbalancieren?) – knguyen

+0

Es macht Sinn. Danke fürs Helfen. –