Da Fanout a AWS Event Fork Pipeline - Amazon Simple Notification Service

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Da Fanout a AWS Event Fork Pipeline

Per l'archiviazione e l'analisi degli eventi, Amazon SNS ora consiglia di utilizzare la sua integrazione nativa con Amazon Data Firehose. Puoi abbonare i flussi di distribuzione Firehose agli SNS argomenti, il che ti consente di inviare notifiche a endpoint di archiviazione e analisi come i bucket Amazon Simple Storage Service (Amazon S3), le tabelle Amazon Redshift, Amazon Service (Service) e altro ancora OpenSearch . OpenSearch L'utilizzo di Amazon SNS con i flussi di distribuzione Firehose è una soluzione completamente gestita e priva di codice che non richiede l'utilizzo di funzioni. AWS Lambda Per ulteriori informazioni, consulta Flussi di distribuzione da Fanout a Firehose.

Puoi usare Amazon SNS per creare applicazioni basate sugli eventi che utilizzano i servizi per abbonati per eseguire il lavoro automaticamente in risposta a eventi attivati dai servizi di pubblicazione. Questo modello di architettura può rendere i servizi più riutilizzabili, interoperabili e scalabili. Tuttavia, può essere impegnativo eseguire il forking dell'elaborazione di eventi in pipeline rivolte ai requisiti di gestione di eventi comuni, come l’archiviazione, il backup, la ricerca, l'analisi dei dati e la riproduzione.

Per accelerare lo sviluppo delle tue applicazioni basate sugli eventi, puoi sottoscrivere pipeline di gestione degli eventi, basate su Event Fork Pipelines, agli argomenti di Amazon. AWS SNS AWS Event Fork Pipelines è una suite di applicazioni annidate open source, basata sul AWS Serverless Application Model (AWS SAM), che puoi distribuire direttamente dalla suite AWS Event Fork Pipelines (scegli Mostra app che creano ruoli o politiche di risorse personalizzati) nel tuo account. IAM AWS

Per un AWS caso d'uso di Event Fork Pipelines, vedi. Distribuzione e test dell'applicazione di esempio AWS Event Fork Pipelines

Come funziona AWS Event Fork Pipelines

AWS Event Fork Pipelines è un modello di progettazione senza server. Tuttavia, è anche una suite di applicazioni serverless annidate basate su AWS SAM (che potete distribuire direttamente da AWS Serverless Application Repository () alle vostre per arricchire le vostre piattaforme basate sugli Account AWS eventi AWS SAR). È possibile distribuire queste applicazioni nidificate individualmente, come richiesto dall'architettura.

Il diagramma seguente mostra un'applicazione AWS Event Fork Pipelines integrata da tre applicazioni annidate. È possibile distribuire qualsiasi pipeline della suite AWS Event Fork Pipelines in modo indipendente, come richiesto dall'architettura. AWS SAR

Event processing architecture with Amazon SNS topic feeding into multiple pipelines.

Ogni pipeline è sottoscritta allo stesso SNS argomento Amazon, permettendo a se stessa di elaborare gli eventi in parallelo man mano che questi eventi vengono pubblicati sull'argomento. Ogni pipeline è indipendente ed è in grado di impostare la propria Policy di filtro per le sottoscrizioni. In questo modo una pipeline può elaborare solo un sottoinsieme di eventi a cui è interessata (invece che tutti gli eventi pubblicati nell'argomento).

Nota

Poiché colloca le tre AWS Event Fork Pipeline insieme alle normali pipeline di elaborazione degli eventi (probabilmente già abbonata al tuo SNS argomento Amazon), non è necessario modificare alcuna parte del tuo attuale editor di messaggi per sfruttare AWS Event Fork Pipelines nei tuoi carichi di lavoro esistenti.

La pipeline di archiviazione di eventi e di backup

Il seguente diagramma mostra la Pipeline di archiviazione di eventi e di backup. Puoi abbonare questa pipeline al tuo SNS argomento Amazon per eseguire automaticamente il backup degli eventi che fluiscono nel tuo sistema.

Questa pipeline comprende una SQS coda Amazon che memorizza nel buffer gli eventi forniti dall'SNSargomento Amazon, una AWS Lambda funzione che esegue automaticamente il polling di questi eventi nella coda e li inserisce in un flusso Amazon Data Firehose e un bucket Amazon S3 che esegue il backup durevole degli eventi caricati dallo stream.

AWS event storage backup pipeline with SNS, SQS, Lambda, Kinesis, S3, and Athena components.

Per affinare il comportamento del flusso Firehose, puoi configurarlo in modo che trasformi, comprima ed esegua il buffering degli eventi prima di caricarli nel bucket. Man mano che gli eventi vengono caricati, puoi utilizzare Amazon Athena per interrogare il bucket utilizzando query standard. SQL Puoi anche configurare la pipeline in modo che riutilizzi un bucket Amazon S3 esistente o ne crei uno nuovo.

La pipeline di ricerca di eventi e di analisi dei dati

Il seguente diagramma mostra la Pipeline di ricerca di eventi e di analisi dei dati. Puoi iscrivere questa pipeline al tuo SNS argomento Amazon per indicizzare gli eventi che fluiscono nel tuo sistema in un dominio di ricerca e quindi eseguire analisi su di essi.

Questa pipeline è composta da una SQS coda Amazon che memorizza nel buffer gli eventi forniti dall'SNSargomento Amazon, una AWS Lambda funzione che analizza gli eventi dalla coda e li inserisce in un flusso Amazon Data Firehose, un dominio Amazon OpenSearch Service che indicizza gli eventi caricati dal flusso Firehose e un bucket Amazon S3 che memorizza gli eventi con lettera morta che non possono essere indicizzati nel dominio di ricerca.

Event search analytics pipeline with Servizi AWS for data processing and storage.

Per affinare il flusso Firehose in termini di buffering, trasformazione e compressione degli eventi, puoi configurare questa pipeline.

Puoi anche configurare se la pipeline deve riutilizzare un OpenSearch dominio esistente nel tuo Account AWS o crearne uno nuovo per te. Man mano che gli eventi vengono indicizzati nel dominio di ricerca, puoi utilizzare Kibana per eseguire l’analisi dei dati sugli eventi e aggiornare i pannelli di controllo visivi in tempo reale.

Pipeline di riproduzione eventi

Il seguente diagramma mostra la Pipeline di riproduzione eventi. Per registrare gli eventi che sono stati elaborati dal sistema negli ultimi 14 giorni (ad esempio quando la piattaforma deve essere ripristinata in seguito a un guasto), puoi iscrivere questa pipeline al tuo SNS argomento Amazon e quindi rielaborare gli eventi.

Questa pipeline è composta da una SQS coda Amazon che memorizza nel buffer gli eventi forniti dall'SNSargomento Amazon e da una AWS Lambda funzione che analizza gli eventi dalla coda e li reindirizza nella normale pipeline di elaborazione degli eventi, anch'essa sottoscritta al tuo argomento.

Event processing pipeline with Amazon SNS, SQS queues, and AWS Lambda for replay functionality.
Nota

Per impostazione predefinita, la funzione di riproduzione è disattivata e gli eventi non vengono reindirizzati. Se devi rielaborare gli eventi, devi abilitare la coda di SQS replay di Amazon come fonte di eventi per la AWS Lambda funzione di replay.

Implementazione di Event Fork Pipelines AWS

La suite AWS Event Fork Pipelines (scegli Mostra app che creano IAM ruoli o politiche di risorse personalizzati) è disponibile come gruppo di applicazioni pubbliche in AWS Serverless Application Repository, da cui è possibile distribuirle e testarle manualmente utilizzando la console.AWS Lambda Per informazioni sulla distribuzione delle pipeline tramite la console, consulta. AWS Lambda Sottoscrizione di un AWS Event Fork Pipelines a un argomento di Amazon SNS

In uno scenario di produzione, consigliamo di incorporare AWS Event Fork Pipelines nel modello generale dell'applicazione. AWS SAM La funzionalità di applicazione annidata consente di eseguire questa operazione aggiungendo la risorsa al AWS SAM modello, facendo riferimento AWS::Serverless::Application alla AWS SAR ApplicationId e all'applicazione nidificata. SemanticVersion

Ad esempio, è possibile utilizzare Event Storage and Backup Pipeline come applicazione annidata aggiungendo il seguente YAML frammento alla Resources sezione del modello. AWS SAM

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

Quando specificate i valori dei parametri, potete utilizzare le funzioni AWS CloudFormation intrinseche per fare riferimento ad altre risorse del modello. Ad esempio, nel YAML frammento precedente, il TopicArn parametro fa riferimento alla AWS::SNS::Topic risorsaMySNSTopic, definita altrove nel modello. AWS SAM Per ulteriori informazioni, consulta la Riferimento funzione intrinseca nella AWS CloudFormation Guida per l’utente.

Nota

La pagina della AWS Lambda console AWS SAR dell'applicazione include il pulsante Copia come SAM risorsa, che copia negli appunti quanto YAML necessario per annidare un' AWS SARapplicazione.