【发布时间】:2021-10-21 02:14:15
【问题描述】:
我有一个从 Pub/Sub 主题触发的云函数。
我想限制我的 Cloud Functions 的速率,因此我将最大实例数设置为 5。在我的情况下,生成的消息将比 Cloud Functions 多得多(并且我想限制正在运行的 Cloud Functions 的数量)。
我希望这个过程表现得像 Kafka/queue——主题消息会被累积,云函数会慢慢消费消息,直到主题为空。
但似乎所有没有触发云功能(ack)的消息,只是简单地发送了一个 UNACK - 并留下了。我的订阅详情:
确认截止日期最大值对我来说太低(由于速率限制,云函数可能需要几个小时才能收到消息)。
我可以在 Pub/Sub 中进行哪些更改以满足我的需求?或者我需要添加一个队列? (Pub/Sub 发送到任务队列,云函数使用任务队列?)。
顺便说一句,发布/订阅数据实际上是 GCS 事件。 如果这是 AWS,我只需将 S3 文件创建的事件发送到 SQS,并在队列的另一端使用 Lambda。
任何帮助将不胜感激。
【问题讨论】:
-
为什么要限制 Cloud Functions 的速率?
标签: google-cloud-platform google-cloud-functions message-queue publish-subscribe google-cloud-pubsub