【问题标题】:How to set up Azure Service Bus topic with NoMatchingSubscriptionException and an AuditTrail Subscription如何使用 NoMatchingSubscriptionException 和 AuditTrail 订阅设置 Azure 服务总线主题
【发布时间】:2014-02-28 15:01:51
【问题描述】:

我想要一个接收发送到该主题的所有消息的订阅。 我想要一个订阅,它接收与其他现有订阅上的过滤器不匹配的所有消息。我可以得到一个或另一个,但不能同时得到。

在使用订阅创建主题的基本示例中,订阅具有过滤器为 1=1 的默认规则。即所有发送到该主题的消息都将发送到该订阅。这些示例表明此订阅可用作该订阅的审计跟踪。但是,如果您遵守该规则,则无法将 EnableFilteringMessagesBeforePublishing 设置为 NoMatchingSubscriptionException

以下情况可能吗?

帖子主题
- Subscription-MessageType-Known 获取设置了 MessageType 属性的所有消息。 - Subscription-NoFilter-Matched 获取与该主题的任何其他过滤器不匹配的所有消息 - Subscription-Audit-Trail 获取发送到该主题的所有消息

【问题讨论】:

    标签: azureservicebus


    【解决方案1】:

    这是不可能的。您可以做到这一点的唯一方法是为自己创造过滤器。因此,您拥有“已知过滤器”,然后是一个复杂的聚合过滤器,仅在其他过滤器不匹配时才匹配。

    我们过去做过的另一件事(以及我们控制发送方的地方!)是缓存我们发送到的主题的过滤器。并首先将我们的消息与这些过滤器进行匹配(在客户端)。如果我们有匹配,我们知道我们有订阅,如果没有,我们可以用它来做我们的特定逻辑。但是,这仅适用于您可以承受较小的性能开销并且控制发送端...

    HTH

    【讨论】:

      猜你喜欢
      • 2016-02-10
      • 2016-12-29
      • 2017-08-15
      • 2023-03-09
      • 2019-02-12
      • 2018-08-27
      • 1970-01-01
      • 2017-10-23
      • 2018-07-18
      相关资源
      最近更新 更多