Can multiple Lambdas subscribe to SQS?

0

I've an SQS queue set up with multiple Lambdas configured as triggers. While this is allowed by AWS's it's not clear what the intended behavior is. For example, is one message pulled off the queue and sent to each Lambda? or only one lambda will get the message

Pascal
preguntada hace 7 meses940 visualizaciones
3 Respuestas
2

Only one of the functions will handle each message. If you want multiple functions to handle the messages, send them to SNS and then subscribe the different functions to the topic either directly, or using different queues. One queue per function.

profile pictureAWS
EXPERTO
Uri
respondido hace 7 meses
profile picture
EXPERTO
revisado hace 7 meses
  • Thank You for sharing the details

0

Hi, Another possible pattern in your use case may be to trigger a Step Function from SQS and then have this Step Function orchestrate (parallel / sequential) the multiple lambdas if all of them need to run on each message.

See https://docs.aws.amazon.com/step-functions/latest/dg/sample-project-express-high-volume-sqs.html

The context of the Step Functions is a nice way to share the message across the various lambdas

Best,

Didier

profile pictureAWS
EXPERTO
respondido hace 7 meses
0

Another way to have multiple Lambda functions (or other subscribers) receive the same message is to use Kinesis instead of SQS. Note that the cost will likely be higher and there are lower throughput limits but depending on what you want to do it might be suitable.

profile pictureAWS
EXPERTO
respondido hace 7 meses

No has iniciado sesión. Iniciar sesión para publicar una respuesta.

Una buena respuesta responde claramente a la pregunta, proporciona comentarios constructivos y fomenta el crecimiento profesional en la persona que hace la pregunta.

Pautas para responder preguntas