Pub/Sub 触发器(第 1 代)

在 Cloud Functions 中,Pub/Sub 触发器能够使函数被调用以响应 Pub/Sub 消息。为函数指定 Pub/Sub 触发器时,您还需要指定 Pub/Sub 主题。每当有消息发布到指定主题时,系统都会调用您的函数。

若要使函数使用 Pub/Sub 触发器,必须将其作为事件驱动型函数实现:

Google 事件代码库包含用于处理事件数据的其他资源。

部署

您可以在部署函数时指定 Pub/Sub 触发器。如需查看有关如何部署函数的一般说明,请参阅部署 Cloud Functions 函数;如需了解有关在部署期间配置 Pub/Sub 触发器的详细信息,请参阅此部分。

gcloud

如果您要使用 gcloud CLI 进行部署,则可以使用此处所示的标志配置 Pub/Sub 触发器:

gcloud functions deploy YOUR_FUNCTION_NAME \
--no-gen2 \
--trigger-topic=YOUR_PUBSUB_TOPIC \
[--retry] \
...
  • --trigger-topic 标志用于指定触发器要监控的 Pub/Sub 主题。发布到此主题的消息会触发对函数的调用。
  • --retry 标志用于控制是否自动重试失败的函数调用。如需了解详情,请参阅重试事件驱动型函数

旧版 Pub/Sub 事件

Cloud Functions (第 1 代) 中的旧版函数对 Pub/Sub 触发器使用不同的事件类型:

gcloud functions deploy YOUR_FUNCTION_NAME \
--no-gen2 \
--trigger-event=providers/cloud.pubsub/eventTypes/topic.publish \
--trigger-resource=YOUR_PUBSUB_TOPIC \
...

已在使用这些事件的旧版函数支持此事件类型。但是,我们建议您改用 --trigger-topic 标志,因为我们今后可能会移除旧版事件类型。

控制台

如果您要使用 Google Cloud 控制台进行部署,则可以在触发器部分中配置 Pub/Sub 触发器。

  1. 触发器类型字段中,选择 Cloud Pub/Sub
  2. 选择 Cloud Pub/Sub 主题字段中,选择触发器要监控的主题,或选择创建主题以打开一个窗口来创建新主题。当消息发布到函数的主题时,系统会触发对函数的调用。
  3. 选中或取消选中失败时重试复选框,以控制是否自动重试失败的函数调用。如需了解详情,请参阅重试事件驱动的函数

后续步骤