如何触发特定时长的后台云功能?

How to trigger background cloud function with specific duration?

我使用 Cloud pub/sub 和 Cloud Functions。

现在,我想发布一个话题,触发后台云功能

但我想在特定时间后触发我的云功能,比如 30 秒后。

我该怎么做?

更新:

这是我的架构,对吗?

您可以使用 Cloud Tasks 安排一些工作延迟进行。

Now, I want to publish a message to a topic which will trigger a background cloud function. But I want to trigger my cloud function after a specific duration, like 30 seconds later.

如果您将 PubSub 设置为在发布事件时触发 Cloud Functions,Cloud Functions 几乎会立即被触发。没有插入延迟的方法。

您需要通过几个主要步骤来实现您的代码:

  1. 设置 PubSub 主题和订阅。不要在新消息上触发 Cloud Functions。消息将等待发送。向该主题发送消息。
  2. 创建一个处理 PubSub 订阅的 Cloud Functions。拉取消息并处理。
  3. 使用 Cloud Tasks、Cloud Scheduler 或 App Engine Tasks 等其他服务在您希望的延迟后触发您的 Cloud 函数。