SUS02-BP06 Implementierung von Pufferung oder Drosselung, um die Bedarfskurve zu verflachen
Pufferung und Drosselung verflachen die Bedarfskurve und reduzieren die erforderliche bereitgestellte Kapazität für Ihr Workload.
Typische Anti-Muster:
-
Sie verarbeiten die Client-Anfragen sofort, obwohl dies nicht erforderlich ist.
-
Sie analysieren die Anforderungen für Client-Anfragen nicht.
Vorteile der Nutzung dieser bewährten Methode: Das Verflachen der Bedarfskurve reduziert die erforderliche bereitgestellte Kapazität für den Workload. Die Reduzierung der bereitgestellten Kapazität bedeutet geringeren Energieverbrauch und geringere Umweltauswirkungen.
Risikostufe, wenn diese bewährte Methode nicht eingeführt wird: niedrig
Implementierungsleitfaden
Die Verflachung der Bedarfskurve kann Ihnen dabei helfen, die bereitgestellte Kapazität für einen Workload zu verringern und dessen Umweltauswirkungen zu reduzieren. Nehmen wir einen Workload mit der nachfolgend gezeigten Bedarfskurve. Dieser Workload hat zwei Spitzen und um damit umzugehen, wird die Ressourcenkapazität bereitgestellt, die hier durch die orangefarbene Linie angezeigt wird. Die für diesen Workload aufgewendeten Ressourcen und die eingesetzte Energie werden nicht durch die Fläche unter der Bedarfskurve, sondern von der Linie für die bereitgestellte Kapazität angezeigt, da für den Umgang mit den beiden Spitzen bereitgestellte Kapazität erforderlich ist.
![Provisioned capacity waveform with two distinct peaks that require high provisioned capacity.](images/provisioned-capacity-1.png)
Bedarfskurve mit zwei deutlichen Spitzen, die hohe bereitgestellte Kapazität erfordern.
Sie können Pufferung oder Drosselung verwenden, um die Bedarfskurve zu beeinflussen und die Spitzen abzumildern, was weniger bereitgestellte Kapazität und einen geringeren Energieverbrauch bedeutet. Implementieren Sie Drosselung, wenn Ihre Clients wiederholte Versuche durchführen können. Implementieren Sie die Pufferung, um die Anforderung zu speichern und die Verarbeitung auf einen späteren Zeitpunkt zu verschieben.
![Waveform diagram displaying a workload with smoothed-out peaks created using buffering or throttling.](images/provisioned-capacity-2.png)
Auswirkungen des Drosselns auf die Bedarfskurve und die bereitgestellte Kapazität.
Implementierungsschritte
-
Analysieren Sie die Client-Anfragen, um festzulegen, wie darauf zu reagieren ist. Wichtige Faktoren dabei sind:
-
Kann diese Anfrage in asynchroner Weise verarbeitet werden?
-
Kann der Client die Anfrage erneut versuchen?
-
-
Wenn dies der Fall ist, können Sie Drosselung verwenden, die der Quelle mitteilt, dass wenn sie die Anfrage zum aktuellen Zeitpunkt nicht bedienen kann, es später erneut versucht werden sollte.
-
Sie können Amazon API Gateway
verwenden, um Drosselung zu implementieren.
-
-
Für Clients, die Anfragen nicht erneut versuchen können, muss zur Verflachung der Bedarfskurve ein Puffer implementiert werden. Ein Puffer verschiebt die Anforderungsverarbeitung, so dass Anwendungen, die mit unterschiedlichen Raten ausgeführt werden, effektiv kommunizieren können. Bei der Pufferung werden Nachrichten von Produzenten in eine Warteschlange oder einen Stream gestellt. Nachrichten können dadurch von Verbrauchern in der für ihre Geschäftsanforderungen passenden Geschwindigkeit gelesen und verarbeitet werden.
-
Amazon Simple Queue Service (Amazon SQS)
ist ein verwalteter Service, der Warteschlangen bietet, die es einem einzelnen Verbraucher ermöglichen, individuelle Nachrichten zu lesen. -
Amazon Kinesis
stellt einen Stream bereit, der es vielen Verbrauchern ermöglicht, dieselben Nachrichten zu lesen.
-
-
Analysieren Sie den Gesamtbedarf, die Änderungsrate und die erforderliche Reaktionszeit, um die korrekte Größe der erforderlichen Drosselung oder des Puffers zu bestimmen.
Ressourcen
Zugehörige Dokumente:
Zugehörige Videos: