有没有办法在数据库中插入 n 次后创建 CloudWatch 事件

发布于 2025-01-18 13:45:08 字数 208 浏览 1 评论 0原文

目前,我有许多 lambda 函数调用,这些函数是在 SQS 队列中存在消息时调用的。这些 lambda 函数将数据插入数据库。我需要一种在处理完所有消息后触发 lambda 函数的方法。我的想法是在数据库中发生所有 n 个插入操作后创建一个 Cloudwatch 事件,但我找不到表明这是可能的文档。这是解决这个问题的好方法吗?在数据库表上发生 N 次插入后是否可以创建 Cloudwatch 事件?

I currently have many invocations of lambda functions that are invoked when messages are present in an SQS queue. These lambda functions insert data into a database. I need a way to trigger a lambda function after all messages have been processed. My thought was to create a Cloudwatch Event after all n insert operations happen in the database, but I cannot find documentation that shows this is possible. Would this be a good way to go about this problem? And is it possible to create a Cloudwatch event after N inserts happen on a database table?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

岁吢 2025-01-25 13:45:08

您可以通过以下步骤解决此问题:

  1. 创建一个CloudWatch警报,以适用于近似emimatenumberofmessages Visible度量指标等于零(意味着SQS队列为空)
  2. 配置CloudWatch警报以将消息发送到SNS主题
  3. 配置lambda函数以订阅SNS主题,

请注意,标准队列的指标是“近似”;如果您想要精确性,则需要一个FIFO队列。从

对于标准队列,由于亚马逊SQ的分布式体系结构,结果是近似的。在大多数情况下,计数应接近队列中的实际消息数。
对于FIFO队列,结果是准确的。

但是,您应该能够通过配置警报的示例时间足够长的时间来减轻这种情况。

You can solve this problem with the following steps:

  1. Create a Cloudwatch alarm for when the ApproximateNumberOfMessagesVisible metric is equal to zero (meaning the SQS queue is empty)
  2. Configure the Cloudwatch alarm to send a message to an SNS topic
  3. Configure the lambda function to subscribe to the SNS topic

Do note that the metrics for a standard queue are "approximate"; if you want exactness you need a FIFO queue. From the documentation:

For standard queues, the result is approximate because of the distributed architecture of Amazon SQS. In most cases, the count should be close to the actual number of messages in the queue.
For FIFO queues, the result is exact.

You should, however, be able to mitigate this by configuring the sample period of the alarm to be long enough.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文