Cómo configurar una función lambda para trabajar con dos disparadores juntos

0

Pregunta

Necesito que uno lambda acaba de empezar cuando algún archivo fue subido en dos diferentes S3 prefijo.

Ejemplo:

Tengo Un archivo y Archivo B y tengo dos prefijo diferente para cada archivo.

Necesito hacer algunas agregaciones con Un archivo y ARCHIVO B.

Para ello voy a utilizar una expresión Lambda que va a poner un mensaje en el SNS cuando estos archivos se pueden cargar.

Me gustaría config esta lambda para ser iniciado cuando este lambda recibir este dos de notificación de eventos.

Así que mi lambda sólo puede comenzar cuando estos dos archivos están disponibles en S3 para ser procesados.

¿Cuál es la mejor manera para la instalación de este desencadenantes de este trabajo juntos?

1

Mejor respuesta

1

TLDR; en Lugar de subir "el archivo creado" notificaciones manualmente en una "publicación lambda", han S3 notificaciones de eventos automáticamente invocar su "procesamiento de lambda" cuando un objetivo se crea el archivo. La lambda se ejecuta hasta el final cuando los dos archivos que existen.

docs: Amazon S3 se puede enviar un evento a una función Lambda cuando un objeto es creado o eliminado.

(1) Crear S3 notificaciones de eventos: Agregar dos notificaciones de eventos para su depósito. Uno invoca el procesamiento de lambda cuando un FileA se crea en S3. El otro invoca cuando un FileB es creado. Usted puede establecer filtros para que su lambda es notificado sólo en ciertos S3 acciones y archivo de patrones.

(2) El procesamiento de lambda comprueba si el otro archivo existe. El S3 evento pasa a la lambda tiene información sobre el evento desencadenante (por ejemplo, ObjectCreated) y el Objeto (por ejemplo, clave nombre, versión, cubo, etc.) Utilizar AWS SDK para comprobar si el otro archivo existe en el S3.

Si ambos archivos existen, a continuación, invocar el pegamento de la rutina, de otra salida.

50% el tiempo de procesamiento lambda va a salir antes (debido a que solo 1 archivo existe). Las otras veces, la lambda va a correr todo el camino a través de la cola de rutina.

(Nota: esto sólo funcionará si se puede derivar un nombre de archivo de los otros, lo que no está claro a partir de la OP o comentarios.)

2021-11-22 14:54:37

En otros idiomas

Esta página está en otros idiomas

Русский
..................................................................................................................
Italiano
..................................................................................................................
Polski
..................................................................................................................
Română
..................................................................................................................
한국어
..................................................................................................................
हिन्दी
..................................................................................................................
Français
..................................................................................................................
Türk
..................................................................................................................
Česk
..................................................................................................................
Português
..................................................................................................................
ไทย
..................................................................................................................
中文
..................................................................................................................
Slovenský
..................................................................................................................