gpt4 book ai didi

google-cloud-platform - Cloud PubSub 重复消息触发的 Cloud Functions

转载 作者:行者123 更新时间:2023-12-05 07:23:06 41 4
gpt4 key购买 nike

我正在尝试将 Cloud Functions 用作由 PubSub 触发的异步后台工作程序,并进行更长时间的工作(以分钟为单位)。完整代码在这里https://github.com/zdenulo/cloud-functions-pubsub

我的原型(prototype)将数据插入 BigQuery 并等待几分钟(以模拟更长的任务)。我正在向 PubSub 主题发布 100 条消息(间隔为 1 秒)。

强调 PubSub 可以多次传递相同的消息,但令我惊讶的是,100 条消息中有 10 到 40 条是重复的。 CF 的响应时间为 5、6、7 分钟。对于 4 分钟的响应,我没有注意到重复。
我在相同的时间间隔内进行了多次测试。接收第一条消息和第二条消息之间的时间差在 ~30 到 ~600 秒之间。

在文档中 https://cloud.google.com/pubsub/docs/troubleshooting提到“Cloud Pub/Sub 可以发送重复的消息。例如,当您在确认截止日期到期之前未确认消息时,Cloud Pub/Sub 会重新发送消息。”对于 Cloud Functions 订阅,确认截止日期为 600 秒(10 分钟),因此根据我的理解,这不应该是原因。

也许我的测试用例是特定的,或者还有别的东西。
如果您能提供有关如何处理这种情况以及这是否正常或如何防止重复(不包括数据流)的建议,我将不胜感激。

最佳答案

存在一个影响 2019 年 1 月之前部署的 Cloud Functions 的问题,导致运行时间超过 5 分钟的函数的重复触发器率增加。请尝试删除并重新部署您的函数以解决问题。

关于google-cloud-platform - Cloud PubSub 重复消息触发的 Cloud Functions,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56193898/

41 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com