Como configurar uma função lambda para trabalhar com dois gatilhos juntos

0

Pergunta

Eu preciso que um lambda só começar quando algum arquivo foi carregado em duas diferentes S3 prefixo.

Exemplo:

Eu Tenho Um arquivo de Arquivo e B e eu tenho dois prefixo diferente para cada arquivo.

Eu preciso fazer algumas agregações com arquivo de Um ARQUIVO e B.

Para fazer isso vou usar um Lambda que vai colocar uma mensagem no SNS quando esta os arquivos sejam carregados.

Eu gostaria de configuração este lambda para ser iniciado, quando este lambda receber dois eventos de notificação.

Então, a minha lambda pode iniciar quando este dois arquivos estão disponíveis em S3 para ser processado.

Qual é o melhor caminho para a instalação deste gatilhos para esse trabalho em conjunto?

1

Melhor resposta

1

TLDR; em Vez de aumentar "arquivo criado" notificações manualmente em um "lançamento lambda", têm S3 notificações de eventos chamar automaticamente o processamento de "lambda" quando um arquivo de destino é criado. O lambda é executado para conclusão quando ambos os arquivos existem.

docs: o Amazon S3 pode enviar um evento para uma função Lambda quando um objeto é criado ou excluído.

(1) Criar S3 notificações de evento: Adicione duas notificações de eventos para o seu balde. Um chama o processamento de lambda quando um FileA é criada, na S3. O outro chama-lo quando um FileB é criada. Você pode definir filtros para o lambda é notificada apenas em determinados S3 ações e padrões de arquivos.

(2) O processamento lambda verifica se o ficheiro existe. O S3 evento passado para o lambda tem informações sobre o evento de disparo (exemplo: ObjectCreated) e Objeto (e.g. chave de nome, versão, balde, etc.) Use o AWS SDK para verificar se o ficheiro existe no S3.

Se ambos os arquivos existem, em seguida, invocar a cola de rotina, mais sair.

50% o tempo de processamento lambda vai sair cedo (porque apenas 1 arquivo existe). Outras vezes, o lambda vai correr todo o caminho até a cola de rotina.

(Nota: isto irá funcionar apenas se pode derivar o nome de um arquivo a partir de outro, que não está claro de que o OP ou comentários.)

2021-11-22 14:54:37

Em outros idiomas

Esta página está em outros idiomas

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