Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Fanout de los SNS eventos de Amazon a AWS Event Fork Pipelines
Para el archivado y el análisis de eventos, Amazon recomienda SNS ahora utilizar su integración nativa con Amazon Data Firehose. Puede suscribir las transmisiones de entrega de Firehose a SNS los temas, lo que le permite enviar notificaciones a puntos de enlace de archivado y análisis, como los depósitos de Amazon Simple Storage Service (Amazon S3), las tablas de Amazon Redshift, OpenSearch Amazon Service (Service) y más. OpenSearch El uso de Amazon SNS con Firehose Delivery Streams es una solución totalmente gestionada y sin código que no requiere el uso de funciones. AWS Lambda Para obtener más información, consulte Transmisiones de entrega de Fanout a Firehose. |
Puedes usar Amazon SNS para crear aplicaciones basadas en eventos que utilicen los servicios de suscriptor para realizar trabajos automáticamente en respuesta a los eventos activados por los servicios del editor. Este patrón arquitectónico puede hacer que los servicios sean más reutilizables, interoperables y escalables. Sin embargo, puede ser muy laborioso bifurcar el procesamiento de eventos a canalizaciones que cumplan los requisitos comunes de administración de eventos, como el almacenamiento de eventos, la copia de seguridad, la búsqueda, el análisis y la repetición.
Para acelerar el desarrollo de tus aplicaciones basadas en eventos, puedes suscribir canales de gestión de eventos (impulsados por Event Fork Pipelines) a los temas de Amazon. AWS SNS AWS Event Fork Pipelines es un conjunto de aplicaciones anidadas de código abierto, basadas en el modelo de aplicaciones AWS sin servidor
Para ver un AWS caso de uso de Event Fork Pipelines, consulte. Implementación y prueba de la aplicación de ejemplo Amazon SNS Event Fork Pipelines
Temas
Cómo funciona AWS Event Fork Pipelines
AWS Event Fork Pipelines es un patrón de diseño sin servidor. Sin embargo, también es un conjunto de aplicaciones anidadas sin servidor basadas en AWS SAM (que puede implementar directamente desde AWS Serverless Application Repository (AWS SAR) a su servidor para enriquecer sus Cuenta de AWS plataformas basadas en eventos). Puede implementar estas aplicaciones anidadas de forma individual, según lo requiera su arquitectura.
Temas
El siguiente diagrama muestra una aplicación AWS Event Fork Pipelines complementada con tres aplicaciones anidadas. Puede implementar cualquiera de las canalizaciones de la suite AWS Event Fork Pipelines de AWS SAR forma independiente, según lo requiera su arquitectura.
Cada canal está suscrito al mismo SNS tema de Amazon, lo que permite procesar eventos en paralelo a medida que estos eventos se publican en el tema. Cada canalización es independiente y puede establecer su propia política de filtros de suscripción. De este modo una canalización puede procesar solo un subconjunto de los eventos que le interesan (en lugar de todos los eventos publicados en el tema).
nota
Como colocas las tres canalizaciones de AWS Event Fork junto con las canalizaciones de procesamiento de eventos habituales (es posible que ya estés suscrito a tu SNS tema de Amazon), no necesitas cambiar ninguna parte de tu editor de mensajes actual para aprovechar las canalizaciones de AWS Event Fork en tus cargas de trabajo actuales.
Canalización de almacenamiento y copia de seguridad de eventos
En el siguiente diagrama se muestra la canalización de almacenamiento y copia de seguridad de eventos
Esta canalización se compone de una SQS cola de Amazon que almacena en búfer los eventos publicados por el SNS tema de Amazon, una AWS Lambda función que sondea automáticamente los eventos de la cola y los envía a una transmisión de Amazon Data Firehose y un depósito de Amazon S3 que hace copias de seguridad duraderas de los eventos cargados por la transmisión.
Para optimizar el comportamiento del flujo de Firehose, puede configurarlo para que almacene en búfer, transforme y comprima los eventos antes de cargarlos en el bucket. A medida que se cargan los eventos, puede utilizar Amazon Athena para consultar el bucket mediante consultas estándarSQL. También puede configurar la canalización para reutilizar un bucket de Amazon S3 existente o crear uno nuevo.
Canalización de búsqueda y análisis de eventos
En el siguiente diagrama se muestra la canalización de búsqueda y análisis de eventos
Esta canalización se compone de una SQS cola de Amazon que almacena en búfer los eventos publicados por el SNS tema de Amazon, una AWS Lambda función que sondea los eventos de la cola y los envía a una transmisión de Amazon Data Firehose, un dominio de OpenSearch Amazon Service que indexa los eventos cargados por la transmisión de Firehose y un depósito de Amazon S3 que almacena los eventos en letra muerta que no se pueden indexar en el dominio de búsqueda.
Para afinar el flujo de Firehose en términos de almacenamiento en búfer, transformación y compresión de eventos, puede configurar esta canalización.
También puedes configurar si la canalización debe reutilizar un OpenSearch dominio existente en el tuyo Cuenta de AWS o crear uno nuevo para ti. A medida que los eventos se indexan en el dominio de búsqueda, puede utilizar Kibana para ejecutar análisis de sus eventos y actualizar los paneles visuales en tiempo real.
Canalización de reproducción de eventos
En el siguiente diagrama se muestra la canalización de reproducción de eventos
Esta canalización se compone de una SQS cola de Amazon que almacena en búfer los eventos publicados por el SNS tema de Amazon y una AWS Lambda función que sondea los eventos de la cola y los redirige a tu canalización de procesamiento de eventos normal, que también está suscrita a tu tema.
nota
De forma predeterminada, la función de reproducción está deshabilitada, por lo que no redirecciona los eventos. Si necesita volver a procesar eventos, debe habilitar la cola de SQS reproducción de Amazon como fuente de eventos para la AWS Lambda función de reproducción.
Implementación de Event Fork Pipelines AWS
La suite AWS Event Fork Pipelines
En un escenario de producción, recomendamos incrustar AWS Event Fork Pipelines en la plantilla general de la aplicación. AWS SAM La función de aplicación anidada le permite hacerlo añadiendo el recurso AWS::Serverless::Application
a la AWS SAM plantilla, haciendo referencia a la aplicación anidada AWS SAR ApplicationId
y a ella. SemanticVersion
Por ejemplo, puede usar Event Storage and Backup Pipeline como una aplicación anidada añadiendo el siguiente YAML fragmento a la Resources
sección de la plantilla. 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
Al especificar los valores de los parámetros, puede utilizar funciones AWS CloudFormation intrínsecas para hacer referencia a otros recursos de la plantilla. Por ejemplo, en el YAML fragmento anterior, el TopicArn
parámetro hace referencia al AWS::SNS::Topic
recursoMySNSTopic
, definido en otra parte de la AWS SAM plantilla. Para obtener más información, consulte la Referencia de función intrínseca en la Guía del usuario de AWS CloudFormation .
nota
La página de la AWS Lambda consola de la AWS SAR aplicación incluye el botón Copiar como SAM recurso, que copia en el YAML portapapeles lo necesario para anidar una AWS SAR aplicación.