官方文档确实提到Google Cloud Pub / Sub会向订阅者重新发送消息,直到订阅者在使用官方Cloud Pub / Sub Node.js客户端时确认收到消息。
但是如果它们返回一个回调错误,它就没有明确地提到背景函数。请参阅https://cloud.google.com/functions/docs/writing/background。
如果它有帮助 - 我的后台功能不使用官方的Cloud Pub / Sub Node.js客户端,因为我从事件争论本身获得了所有必需的信息。
来自文档:https://cloud.google.com/functions/docs/bestpractices/retries
云函数保证至少一次执行事件源发出的每个事件的后台函数。但是,默认情况下,如果函数调用因错误而终止,则不会再次调用该函数,并且将删除该事件。在后台函数上启用重试时,Cloud Functions将重试失败的函数调用,直到成功完成或重试窗口到期为止。
如下所述,您可以启用重试错误:
在上述任何一种情况下,该函数默认停止执行,并且该事件被丢弃。如果要在发生错误时重试该功能,可以通过设置“重试失败”属性来更改默认重试策略。这会导致事件重复重试最多多天,直到函数成功完成。