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.
Fanout von Amazon SNS SNS-Ereignissen in AWS Event Fork-Pipelines
Für die Archivierung und Analyse von Ereignissen empfiehlt Amazon SNS jetzt, die native Integration mit Amazon Data Firehose zu verwenden. Sie können Firehose-Lieferstreams für SNS-Themen abonnieren, sodass Sie Benachrichtigungen an Archivierungs- und Analyseendpunkte wie Amazon Simple Storage Service (Amazon S3) -Buckets, Amazon Redshift Redshift-Tabellen, Amazon OpenSearch Service (OpenSearch Service) und mehr senden können. Die Verwendung von Amazon SNS mit Firehose Delivery Streams ist eine vollständig verwaltete und codelose Lösung, für die Sie keine Funktionen verwenden müssen. AWS Lambda Weitere Informationen finden Sie unter Lieferstreams von Fanout nach Firehose. |
Sie können Amazon SNS zum Entwickeln ereignisgesteuerter Anwendungen verwenden, die Abonnenten-Services für die automatische Ausführung von Aufgaben als Antwort auf von Herausgeber-Services ausgelöste Ereignisse verwenden. Dieses Architekturmuster kann eine bessere Wiederverwendbarkeit, Interoperabilität und Skalierbarkeit von Services unterstützen. Es kann jedoch arbeitsaufwändig sein, die Verarbeitung von Ereignissen auf Pipelines aufzuteilen, die gemeinsame Anforderungen an die Ereignisbehandlung erfüllen, wie Speicherung, Backup, Suche, Analytik und Replay von Events.
Um die Entwicklung Ihrer ereignisgesteuerten Anwendungen zu beschleunigen, können Sie Event-Handling-Pipelines — unterstützt von AWS Event Fork Pipelines — für Amazon SNS SNS-Themen abonnieren. AWS Event Fork Pipelines ist eine Suite verschachtelter Open-Source-Anwendungen, die auf dem AWS Serverless Application Model
Einen Anwendungsfall für AWS Event Fork Pipelines finden Sie unter. Bereitstellen und Testen der Beispielanwendung Amazon SNS Event Fork Pipelines
Themen
So funktionieren AWS Event Fork-Pipelines
AWS Event Fork Pipelines ist ein serverloses Entwurfsmuster. Es handelt sich jedoch auch um eine Suite verschachtelter serverloser Anwendungen, die auf AWS SAM basieren (die Sie direkt vom AWS Serverless Application Repository (AWS SAR) auf Ihrem Computer bereitstellen können, um Ihre AWS-Konto ereignisgesteuerten Plattformen zu erweitern). Sie können diese verschachtelten Anwendungen einzeln bereitstellen wie von Ihrer Architektur gefordert.
Themen
Das folgende Diagramm zeigt eine AWS Event Fork Pipelines-Anwendung, die durch drei verschachtelte Anwendungen ergänzt wird. Sie können jede der Pipelines aus der AWS Event Fork Pipelines Suite unabhängig voneinander auf der AWS SAR bereitstellen, wie es Ihre Architektur erfordert.

Jede Pipeline hat dasselbe Amazon SNS-Thema abonniert, um Ereignisse parallel verarbeiten zu können, wenn diese Ereignisse zum Thema veröffentlicht werden. Jede Pipeline ist unabhängig und Sie können eine eigene Abonnementfilterrichtlinie festlegen. So ist es möglich, dass eine Pipeline nur eine Teilmenge der Ereignisse verarbeitet - die von Interesse (anstelle aller zum Thema veröffentlichter Ereignisse).
Anmerkung
Da Sie die drei AWS Event Fork-Pipelines neben Ihren regulären Event-Verarbeitungspipelines platzieren (möglicherweise haben Sie Ihr Amazon SNS SNS-Thema bereits abonniert), müssen Sie keinen Teil Ihres aktuellen Nachrichtenherausgebers ändern, um die AWS Event Fork-Pipelines in Ihren bestehenden Workloads zu nutzen.
Die Pipeline für die Speicherung und Sicherung von Ereignissen
Das folgende Diagramm zeigt die Pipeline für die Speicherung und Sicherung von Ereignissen
Diese Pipeline besteht aus einer Amazon SQS SQS-Warteschlange, die die vom Amazon SNS SNS-Thema übermittelten Ereignisse zwischenspeichert, einer AWS Lambda Funktion, die automatisch nach diesen Ereignissen in der Warteschlange abfragt und sie in einen Amazon Data Firehose-Stream überträgt, und einem Amazon S3 S3-Bucket, der die vom Stream geladenen Ereignisse dauerhaft sichert.

Um das Verhalten Ihres Firehose-Streams zu optimieren, können Sie ihn so konfigurieren, dass Ihre Ereignisse gepuffert, transformiert und komprimiert werden, bevor sie in den Bucket geladen werden. Während die Ereignisse geladen werden, können Sie Amazon Athena verwenden, um im Bucket SQL-Standardabfragen zu stellen. Sie können die Pipeline auch für die Wiederverwendung eines vorhandenen Amazon S3-Buckets konfigurieren oder einen neuen Bucket erstellen.
Die Pipeline für die Suche und Analyse von Ereignissen
Das folgende Diagramm zeigt die Pipeline für die Suche und Analyse von Ereignissen
Diese Pipeline besteht aus einer Amazon SQS SQS-Warteschlange, die die vom Amazon SNS SNS-Thema übermittelten Ereignisse zwischenspeichert, einer AWS Lambda Funktion, die Ereignisse aus der Warteschlange abfragt und sie in einen Amazon Data Firehose-Stream überträgt, einer Amazon OpenSearch Service-Domain, die die vom Firehose-Stream geladenen Ereignisse indexiert, und einem Amazon S3 S3-Bucket, der die Ereignisse speichert, die nicht in der Such-Domain indexiert werden können.

Um Ihren Firehose-Stream in Bezug auf die Pufferung, Transformierung und Komprimierung von Ereignissen zu optimieren, können Sie diese Pipeline konfigurieren.
Sie können auch konfigurieren, ob die Pipeline eine bestehende OpenSearch Domain in Ihrer wiederverwenden AWS-Konto oder eine neue für Sie erstellen soll. Während der Indizierung von Ereignissen in der Suchdomäne können Sie mit Kibana Analysen für Ihre Ereignisse ausführen und visuelle Dashboards in Echtzeit aktualisieren.
Die Pipeline für das Replay von Events
Das folgende Diagramm zeigt die Pipeline für das Replay von Events
Diese Pipeline besteht aus einer Amazon SQS SQS-Warteschlange, die die vom Amazon SNS SNS-Thema übermittelten Ereignisse zwischenspeichert, und einer AWS Lambda Funktion, die Ereignisse aus der Warteschlange abfragt und sie in Ihre reguläre Ereignisverarbeitungspipeline zurückleitet, die auch Ihr Thema abonniert hat.

Anmerkung
Standardmäßig ist die Funktion für das erneute Abspielen deaktiviert und schiebt Ihre Ereignisse nicht erneut in die reguläre Pipeline. Wenn Sie Ereignisse erneut verarbeiten müssen, müssen Sie die Amazon-SQS-Warteschlange für das erneute Abspielen als Ereignisquelle für die AWS Lambda -Funktion für das erneute Abspielen aktivieren.
Bereitstellung von AWS Event Fork-Pipelines
Die AWS Event Fork Pipelines Suite
In einem Produktionsszenario empfehlen wir, AWS Event Fork-Pipelines in die SAM-Vorlage Ihrer gesamten Anwendung einzubetten. AWS Mit der Funktion für verschachtelte Anwendungen können Sie dies tun, indem Sie die Ressource AWS::Serverless::Application
zu Ihrer AWS SAM-Vorlage hinzufügen und dabei auf die AWS SAR ApplicationId
und die der verschachtelten Anwendung verweisen. SemanticVersion
Sie können beispielsweise die Event Storage and Backup Pipeline als verschachtelte Anwendung verwenden, indem Sie dem Resources
Abschnitt Ihrer SAM-Vorlage den folgenden YAML-Snippet hinzufügen. AWS
Backup:
Type: AWS::Serverless::Application
Properties:
Location:
ApplicationId: arn:aws:serverlessrepo:us-east-2:123456789012:applications/fork-event-storage-backup-pipeline
SemanticVersion: 1.0.0
Parameters:
#The ARN of the Amazon SNS topic whose messages should be backed up to the Amazon S3 bucket.
TopicArn: !Ref MySNSTopic
Wenn Sie Parameterwerte angeben, können Sie AWS CloudFormation systeminterne Funktionen verwenden, um auf andere Ressourcen in Ihrer Vorlage zu verweisen. Im obigen YAML-Snippet verweist der TopicArn
Parameter beispielsweise auf die AWS::SNS::Topic
Ressource, die an anderer Stelle in der Vorlage MySNSTopic
definiert ist. AWS SAM Weitere Informationen finden Sie in der Referenz für intrinsische Funktion im AWS CloudFormation -Benutzerhandbuch.
Anmerkung
Die AWS Lambda Konsolenseite für Ihre AWS SAR-Anwendung enthält die Schaltfläche Als SAM-Ressource kopieren, mit der das für die Verschachtelung einer AWS SAR-Anwendung erforderliche YAML in die Zwischenablage kopiert wird.