COST09-BP02 Implementieren eines Puffers oder einer Drosselung zur Bedarfsverwaltung - AWS Well-Architected Framework

COST09-BP02 Implementieren eines Puffers oder einer Drosselung zur Bedarfsverwaltung

Pufferung und Drosselung ändern den Bedarf Ihres Workloads und glätten alle Spitzen. Implementieren Sie die Drosselung, wenn Ihre Clients Wiederholungen durchführen. Implementieren Sie die Pufferung, um die Anforderung zu speichern und die Verarbeitung auf einen späteren Zeitpunkt zu verschieben. Stellen Sie sicher, dass Ihre Drosselungen und Puffer so konzipiert sind, dass Clients in der erforderlichen Zeit eine Antwort erhalten.

Risikostufe, wenn diese bewährte Methode nicht eingeführt wird: Niedrig

Implementierungsleitfaden

Drosselung: Wenn die Quelle der Nachfrage über eine Wiederholungsfunktion verfügt, können Sie die Drosselung implementieren. Die Drosselung teilt der Quelle mit, dass wenn sie die Anforderung zum aktuellen Zeitpunkt nicht bedienen kann, sie es später erneut versuchen sollte. Die Quelle wartet einen bestimmten Zeitraum und wiederholt die Anforderung. Die Implementierung der Drosselung hat den Vorteil, dass die maximale Menge an Ressourcen und Kosten des Workloads begrenzt wird. In AWS können Sie Amazon API Gateway verwenden, um die Drosselung zu implementieren. Weitere Informationen zur Implementierung der Drosselung finden Sie im Well-Architected Whitepaper zur Säule "Zuverlässigkeit" .

Pufferung: Ähnlich wie bei der Drosselung verschiebt ein Puffer die Anforderungsverarbeitung, sodass Anwendungen, die mit unterschiedlichen Raten ausgeführt werden, effektiv kommunizieren können. Bei der Pufferung werden Nachrichten (Arbeitseinheiten) von Produzenten in eine Warteschlange gestellt. Nachrichten können dadurch von Verbrauchern in der für ihre Geschäftsanforderungen passenden Geschwindigkeit gelesen und verarbeitet werden. Sie brauchen sich keine Gedanken darüber zu machen, wie Produzenten mit Drosselungsproblemen, z. B. der Datenbeständigkeit und dem Gegendruck, umgehen. Bei Gegendruck werden die Produzenten langsamer, damit die langsameren Verbraucher die Daten aufnehmen können.

In AWS können Sie zur Implementierung eines pufferbasierten Ansatzes aus mehreren Services wählen. 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.

Stellen Sie bei der Architektur mit einem pufferbasierten Ansatz sicher, dass Sie Ihren Workload so gestalten, dass er die Anforderung in der erforderlichen Zeit erfüllt, und dass Sie doppelte Arbeitsanfragen verarbeiten können.

Implementierungsschritte

  • Analysieren der Client-Anforderungen: Analysieren Sie die Client-Anforderungen, um zu bestimmen, ob sie Wiederholungen durchführen können. Für Clients, die keine Wiederholungen durchführen können, müssen Puffer implementiert werden. Analysieren Sie den Gesamtbedarf, die Änderungsrate und die erforderliche Reaktionszeit, um die Größe der erforderlichen Drosselung oder des Puffers zu bestimmen.

  • Implementieren eines Puffers oder einer Drosselung: Implementieren Sie einen Puffer oder eine Drosselung im Workload. Eine Warteschlange wie Amazon Simple Queue Service (Amazon SQS) kann für Ihre Workload-Komponenten einen Puffer bereitstellen. Amazon API Gateway kann eine Drosselung für Ihre Workload-Komponenten bereitstellen.

Ressourcen

Zugehörige Dokumente: