0

我有一个带有两个订阅的Azure 服务总线主题。我想使用发送消息连接器从逻辑应用向主题发送消息。如何将消息发送到特定订阅。现在它只需要主题名称并且没有属性来接受订阅名称,我该如何实现它。

提前致谢。

4

2 回答 2

0

服务总线中的订阅是对主题消息的隔离视图,本质上是订阅私有消息的副本。这允许多个消费者在不相互竞争的情况下处理主题消息。

您不能将消息消息直接发布到订阅,只能发布到与订阅关联的主题。与该主题关联的所有订阅都可以访问该消息。

如果您希望为单个消费者(或一组竞争消费者)发送消息,服务总线队列可能更适合您的场景。

于 2021-03-24T14:20:21.013 回答
0

不幸的是,这是不可能的(只是不是逻辑应用程序,但一般来说)

这就是主题和订阅的工作方式。

在此处输入图像描述

  • 服务总线主题为发送方应用程序提供了一个端点来发送消息。

  • 主题的每个订阅都会获得发送到该主题的消息的副本

主题和订阅提供了一对多的通信形式。

话虽如此,您可以在订阅端配置过滤器。这将有助于仅从中央池接收符合标准的那些消息。当您希望特定订阅接收它时。您可以通过匹配过滤条件的方式发送消息。

所以,像这样:

在此处输入图像描述

图片来源

将 100 条消息发送到主题,但根据过滤规则将每个订阅拆分为 30、45、25。不符合过滤条件的消息对订阅不可用。

在您的情况下,您需要为两个订阅设置过滤器。触发消息,使其仅匹配其中一个订阅。

或者,如果它是 1:1 - 您可以使用队列。

在订阅级别设置过滤器的参考:

过滤器服务总线

过滤服务总线

Stackthread 上的实现

于 2021-03-24T14:20:59.403 回答