I have a simple personal project I work on from time to time to learn AWS.
Recently I received an alert emailk from aws stating that I'm reaching the free tier quota for one or more services with the following table:
Product | AWS Free Tier Usage as of 06/27/2024 | Usage Limit | AWS Free Tier Usage Limit |
---|---|---|---|
AWSQueueService | 863,587 Requests | 1,000,000 Requests | 1,000,000.0 Requests are always free per month as part of AWS Free Usage Tier (Global-Requests) |
The project is mostly serverless architecture developed with the CDK, it has not and never will reach a production stage, no one will ever see nor use it, barely I use it a part from some testing calls.
The project have 4 SQS queuese, each of which trigger a single Lambda function, so checking the monitoring section of each queue I see all the charts are 0 except for Number of Empty Receives:
I'm still learning on AWS services integrations, so what comes to my mind is that Lambda is continuously polling SQS, thus making requests, while I tought that where SQS the one calling Lambda when new messages where ready, is that correct?
If it is so, how can I reduce the calls from Lambda to SQS? I'm not interested in performance, I just want to not exceed the monthly free tier quota.