A mensagem do SQS só pode ser lida uma vez da fila e, embora esteja sendo processada por um consumidor, ela ficará invisível para outros consumidores. Se você tiver vários lambdas, cada um receberá sua parte das mensagens, mas uma mensagem não será entregue a mais de um lambda por vez.
Mensagens do SQS podem ser reinseridas na fila se o Lambda de processamento falhar (se o Lambda for acionado pela fila) ou se a mensagem não for excluída no tempo limite de visibilidade (se o Lambda estiver pesquisando a fila).
Se você precisar de uma única mensagem processada por vários Lambdas ao mesmo tempo, você pode:
- divulgue a mensagem do SQS para o SNS que terá vários inscritos (por exemplo, vários Lambdas, todos processando a mesma mensagem) ou
- use stream do Kinesis em vez de SQS. O Kinesis suporta múltiplos consumidores da mesma mensagem.
Espero que ajude:)