Sid*_*pta 4 google-cloud-platform google-cloud-pubsub
我对 GCP 平台比较陌生。我有一个在 pubsub 主题中发布消息的系统。Messages 有一个名为 country 的属性,基于这个属性,不同的客户端想要订阅消息。客户 X 只对国家 a 的消息感兴趣。客户端 Y 只对 b 国的消息感兴趣。
我是否必须在 google pub sub 中为每个国家/地区创建主题?或者有一种聪明的方法可以根据属性值订阅单个主题
我指的是发布者传递的属性,如谷歌文档中所述。 https://cloud.google.com/pubsub/docs/publisher
谢谢
2020 年 6 月更新:过滤现在是 Google Cloud Pub/Sub 中的一项可用功能。创建订阅时,可以指定一个查看消息属性的过滤器。如果消息与过滤器不匹配,Pub/Sub 服务会自动确认该消息,而不会将其传送给订阅者。
在这种特定情况下,您可以创建一个主题和两个不同的订阅,一个用于获取国家 a 的消息,另一个用于获取国家 b 的消息。每个订阅的过滤器将是:
attributes.country = a
Run Code Online (Sandbox Code Playgroud)
attributes.country = b
Run Code Online (Sandbox Code Playgroud)
上一个答案:
您正在谈论的功能称为过滤:您希望订阅能够根据消息中提供的属性指定它想要接收消息的子集。目前,该功能在 Google Cloud Pub/Sub 中不存在。
目前有两种处理方法:
我们正在探索添加功能的方法,这将使这个用例在未来更容易。
| 归档时间: |
|
| 查看次数: |
5357 次 |
| 最近记录: |