SUS03-BP01 Optimieren Sie Software und Architektur für asynchrone und geplante Jobs - AWS Well-Architected Framework

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

SUS03-BP01 Optimieren Sie Software und Architektur für asynchrone und geplante Jobs

Verwenden Sie effiziente Software- und Architekturmuster wie warteschlangenbasierte Systeme, um eine durchgängig hohe Auslastung von bereitgestellten Ressourcen zu erzielen.

Typische Anti-Muster:

  • Sie stellen zu viele Ressourcen in der Cloud-Workload bereit, um auf unerwartete Nachfragesteigerungen reagieren zu können.

  • In Ihrer Architektur werden Absender und Empfänger von asynchronen Nachrichten nicht durch eine Messaging-Komponente entkoppelt.

Vorteile der Nutzung dieser bewährten Methode:

  • Durch effiziente Software- und Architekturmuster werden ungenutzte Ressourcen in Ihrer Workload minimiert und die allgemeine Effizienz gesteigert.

  • Sie können die Verarbeitung unabhängig vom Empfang asynchroner Nachrichten skalieren.

  • Durch eine Messaging-Komponente gelten weniger strenge Verfügbarkeitsanforderungen, die mit weniger Ressourcen erfüllt werden können.

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

Implementierungsleitfaden

Verwenden Sie effiziente Architekturmuster wie eine ereignisgesteuerte Architektur, die zu einer gleichmäßigen Nutzung der Komponenten führen und die Überbereitstellung in Ihrer Workload minimieren. Durch die Verwendung effizienter Architekturmuster werden ungenutzte Ressourcen, die aufgrund von Änderungen der Nachfrage im Laufe der Zeit nicht genutzt werden, minimiert.

Analysieren Sie die Anforderungen Ihrer Workload-Komponenten und führen Sie Architekturmuster ein, mit denen die allgemeine Auslastung der Ressourcen gesteigert wird. Nehmen Sie Komponenten außer Betrieb, die nicht mehr benötigt werden.

Implementierungsschritte

  • Analysieren Sie die Nachfrage für Ihre Workload, um zu bestimmen, wie diese erfüllt werden kann.

  • Verwenden Sie für Anfragen oder Aufträge, für die keine synchronen Antworten erforderlich sind, warteschlangenbasierte Architekturen und Worker mit Auto Scaling, durch die die Auslastung maximiert wird. Hier finden Sie einige Beispiele für Situationen, in denen Sie eine warteschlangenbasierte Architektur in Erwägung ziehen sollten:

    Warteschlangenmechanismus Beschreibung

    AWS Batch Job-Warteschlangen

    AWS Batch Jobs werden in eine Auftragswarteschlange gestellt, wo sie gespeichert werden, bis ihre Ausführung in einer Rechenumgebung geplant werden kann.

    Amazon Simple Queue Service und Amazon EC2 Spot-Instances

    Kombinieren von Amazon SQS - und Spot-Instances zum Aufbau einer fehlertoleranten und effizienten Architektur.

  • Verwenden Sie für Anfragen oder Aufträge, die jederzeit verarbeitet werden können, Planungsmechanismen zur Auftragsverarbeitung in Batches, um die Effizienz zu steigern. Hier sind einige Beispiele für Planungsmechanismen in folgenden Bereichen: AWS

    Zeitplanungsmechanismus Beschreibung

    Amazon EventBridge Scheduler

    Eine Funktion von Amazon EventBridge, mit der Sie geplante Aufgaben in großem Umfang erstellen, ausführen und verwalten können.

    AWS Glue zeitbasierter Zeitplan

    Definieren Sie einen zeitbasierten Zeitplan für Ihre Crawler und Jobs in. AWS Glue

    Geplante Aufgaben von Amazon Elastic Container Service (AmazonECS)

    Amazon ECS unterstützt die Erstellung von geplanten Aufgaben. Geplante Aufgaben verwenden EventBridge Amazon-Regeln, um Aufgaben entweder nach einem Zeitplan oder als Reaktion auf ein EventBridge Ereignis auszuführen.

    Instance Scheduler

    Konfigurieren Sie Start- und Stoppzeitpläne für Ihre Amazon EC2 - und Amazon Relational Database Service Service-Instances.

  • Wenn Sie Abfrage- und Webhook-Mechanismen in Ihrer Architektur verwenden, ersetzen Sie diese durch Ereignisse. Erstellen Sie mit ereignisgesteuerten Architekturen hocheffiziente Workloads.

  • Nutzen Sie Serverless in AWS, um eine übermäßige Bereitstellung in einer Infrastruktur zu eliminieren.

  • Wählen Sie die richtige Größe für Ihre Architektur, um zu vermeiden, dass ungenutzte Ressourcen auf Eingaben warten.

Ressourcen

Zugehörige Dokumente:

Zugehörige Videos:

Zugehörige Beispiele: