- Newest
- Most votes
- Most comments
Hello.
I have since learned that's not how it works and the Lambda function just continually pulls from the queue. What am I missing?
Have you set up SQS for your Lambda trigger?
In this case, as you know, when a message is sent to an SQS queue, Lambda pulls the message and begins processing it.
https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-configure-lambda-function-trigger.html
It is possible to set a delay until the message is processed on the SQS queue side, but the maximum delay is 15 minutes, so it cannot be used if you want to process it at a specific date and time.
https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-delay-queues.html
If you want to perform processing at a specific time, I think it would be a good idea to configure Lambda to run using the EventBridge scheduler.
https://docs.aws.amazon.com/lambda/latest/dg/with-eventbridge-scheduler.html
Relevant content
- asked a year ago
- AWS OFFICIALUpdated 3 years ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated 6 months ago
- AWS OFFICIALUpdated 2 months ago
Thanks. The scheduler will work great, but that also means self managing the queue, so it feels like I'm not using it as it's designed. Is the need to control when or how fast queue items process an unusual requirement? Is there a better way to do this like saving the items off to DynamoDB and processing them from there?