jef*_*son 2 amazon-sqs amazon-web-services aws-lambda
我有一个简单的 lambda 应用程序,它现在不在生产中,仅用于测试和调试。该函数向 SQS 发送消息以在外部应用程序上执行 CRUD 操作。我已将此函数设置为在接收消息时由 SQS 调用,因此发送和接收相同的函数。
我刚刚收到一封电子邮件,说我已经使用了超过 85% 的免费层 SQS 请求配额,或者在过去 2 周内使用了超过 850,000 个请求。我确定这些请求不是发送到队列或接收到的消息。对于我使用此应用程序的频率,发送/接收次数必须低于 1000。我还使用 SQS 监控验证了队列中没有任何消息。发送的消息数量或多或少是我预期的,数量很少。
就像我说的,这个应用程序仅供我自己每周使用几天进行测试。850,000+ 的请求来自哪里?
Amazon SQS 的收费标准为每百万次 API 调用 0.40 美元。调用包括发送、接收和删除,因此一条消息可能使用 3 个以上的 API 调用。
来自AWS Lambda 将 Amazon Simple Queue Service 添加到支持的事件源 | AWS 新闻博客:
此功能不收取额外费用,但由于 Lambda 服务会持续对 SQS 队列进行长轮询,因此将按照标准 SQS 定价费率向账户收取这些 API 调用的费用。
长轮询需要 20 秒,每天进行 4320 次轮询。这相当于两周内 60,480 次或每月 129,600 次。诚然,如果消息正在流动会更多,因为只要有消息就会退出长轮询。
因此,要么队列被大量使用(并且您以 0.40 美元的价格获得了极好的价值),要么您有其他东西生成了大量 SQS API 调用。
| 归档时间: |
|
| 查看次数: |
1091 次 |
| 最近记录: |