Pub/Sub 主题上的消息子集是否可以触发云功能?
Can a cloud function be triggered by a subset of messages on a Pub/Sub topic?
我查看了 Cloud Pub/Sub Tutorial,其中解释了如何编写云函数(在 Python 中)以使用来自 Pub/Sub 主题的消息并对其执行操作。
我的用例略有不同。关于我的云功能感兴趣的主题,只有一部分消息,它们是带有特定 attribute 的消息。我不想在云函数中询问消息以查看它是否具有正确的属性,因为我仍然需要支付执行该函数的成本,我宁愿只为消息执行云函数他们身上的属性。
有没有办法指定我的函数应该只使用具有特定属性的消息?
不,没有。听起来您应该改为使用多个主题,一个主题对应您希望隔离的每个可能情况以单独的功能或目的。
来自 documentation(强调我的):
Every message published to this topic will trigger function execution with message contents passed as input data.
如果您创建一个后台函数,我的意思是一个由 PubSub 主题直接调用的函数,您不能。
要实现你想要的,你需要创建一个HTTP functions and to create a Push Subscription with message filtering (the filtering is enforced on the message attributes only)
我查看了 Cloud Pub/Sub Tutorial,其中解释了如何编写云函数(在 Python 中)以使用来自 Pub/Sub 主题的消息并对其执行操作。
我的用例略有不同。关于我的云功能感兴趣的主题,只有一部分消息,它们是带有特定 attribute 的消息。我不想在云函数中询问消息以查看它是否具有正确的属性,因为我仍然需要支付执行该函数的成本,我宁愿只为消息执行云函数他们身上的属性。
有没有办法指定我的函数应该只使用具有特定属性的消息?
不,没有。听起来您应该改为使用多个主题,一个主题对应您希望隔离的每个可能情况以单独的功能或目的。
来自 documentation(强调我的):
Every message published to this topic will trigger function execution with message contents passed as input data.
如果您创建一个后台函数,我的意思是一个由 PubSub 主题直接调用的函数,您不能。
要实现你想要的,你需要创建一个HTTP functions and to create a Push Subscription with message filtering (the filtering is enforced on the message attributes only)