Meine Auto Scaling-API-Aufrufe werden gedrosselt. Was kann ich tun, um das zu vermeiden?

Lesedauer: 3 Minute
0

Meine Anwendung erhält die Fehlermeldung „Rate überschritten“, wenn sie Amazon EC2 Auto Scaling, AWS Auto Scaling oder AWS Application Auto Scaling aufruft. Was kann ich tun, um diesen Fehler zu vermeiden?

Kurzbeschreibung

Alle API-Aufrufe dürfen die maximal zulässige API-Anforderungsrate pro Konto und pro Region nicht überschreiten. Dazu gehören API-Aufrufe von der AWS Command Line Interface (AWS CLI) und der AWS-Managementkonsole. Wenn API-Anfragen die maximale Rate überschreiten, erhalten Sie die Fehlermeldung „Rate überschritten“ und weitere API-Aufrufe werden gedrosselt.

Amazon EC2 Auto Scaling, AWS Auto Scaling und AWS Application Auto Scaling haben jeweils ihre eigenen API-Drossel-Buckets. Das bedeutet, dass alle Amazon EC2 Auto Scaling-API-Aufrufe ein einziges, gemeinsames API-Limit haben. Amazon EC2 Auto Scaling-API-Aufrufe wirken sich nicht auf das Limit für AWS Application Auto Scaling-APIs aus.

Um den Fehler „Rate überschritten“ und die Drosselung zu vermeiden, stellen Sie sicher, dass Ihre Anwendung nur die erforderlichen Anrufe tätigt.

**Hinweis:**Wenn Sie beim Ausführen von AWS-CLI-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste Version der AWS-CLI verwenden.

Lösung

Probieren Sie die folgenden Lösungen aus, um „Rate überschritten“ -Fehler und Drosselungen zu verhindern oder zu mindern:

„Describe“ -Anrufe validieren

Übermäßige „Describe“-Aufrufe tragen zur Gesamtzahl der API-Anfragen, gemessen an der zulässigen Anforderungsrate, bei. Überprüfen Sie Ihre Anwendung, um sicherzustellen, dass alle „Describe“-Aufrufe erforderlich sind, und ziehen Sie nach Möglichkeit andere Lösungen als „Describe“-Aufrufe in Betracht. Erwägen Sie die Verwendung von Push-Benachrichtigungen von Amazon EventBridge, die gesendet werden, wenn sich der Status von Instances ändert, z. B. wenn sie einen Lebenszyklus-Hook starten.

Überprüfen Sie Aufrufe von Drittanbieteranwendungen

Anwendungen von Drittanbietern rufen möglicherweise kontinuierlich Auto Scaling in AWS auf. Überprüfen Sie Ihre Drittanbieteranwendungen, um sicherzustellen, dass sie keine unnötigen Anrufe tätigen.

Implementieren Sie Fehler-Neuversuche und exponentielle Backoffs

Fehler-Neuversuche und exponentielle Backoffs können dazu beitragen, die Rate von API-Aufrufen zu begrenzen. Jedes AWS-SDK implementiert automatische Wiederholungslogik und exponentielle Backoff-Algorithmen. Weitere Informationen finden Sie unter Fehler-Neuversuche und exponentielles Backoff in AWS.

Beantragen Sie eine Erhöhung des Servicekontingents im AWS Support Center

Um eine Erhöhung des Servicekontingents zu erhalten, müssen Sie bestätigen, dass Sie Ihre API-Aufrufrate validiert und dass Sie Fehler-Neuversuche oder exponentielle Backoff-Methoden implementiert haben. In Ihrer Anfrage müssen Sie auch die Region und den Zeitrahmen im Zusammenhang mit den Drosselungsproblemen angeben.

Vermeiden Sie Aktivitätsspitzen

Vermeiden Sie Situationen, die zu einer Reihe von API-Aufrufen führen. Aktivieren Sie beispielsweise nicht den Abskalierungs-Schutz für alle Instances in einer Amazon EC2 Auto Scaling-Gruppe, wenn Sie sie starten. Aktivieren Sie stattdessen diese Option standardmäßig für die Gruppe, sodass der Schutz für alle Instances standardmäßig aktiviert ist.


Ähnliche Informationen

Exponentielles Backoff und Jitter

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 3 Jahren