0

我们将 MassTransit 与 Azure 服务总线一起使用,我们面临以下问题:

将订阅的属性(例如 MaxDeliveryCount)从 10 更改为 15 时:

            x.UsingAzureServiceBus((context, configurator) =>
            {
                configurator.Host(
                    "xyz");

                configurator.PropagateActivityTracingContext();

                configurator.SubscriptionEndpoint(
                    "consumer1",
                    "topic-name",
                    e =>
                    {
                        e.ConfigureConsumer<ExampleMessageConsumer>(context);
                        e.MaxDeliveryCount = 15;
                    });
            });

... Azure 中现有订阅的属性值未更改。

当主题已经存在时,更改主题属性也是如此。

这是“设计使然”还是错误?

如果这是“设计”,如何处理?

我们正在通过脚本 (IaC) 创建 Azure 服务总线命名空间,并让 MassTransit 创建我们的主题和订阅。

谢谢你的帮助。

亲切的问候,彼得

4

1 回答 1

0

MassTransit 不会更新订阅(如果存在),它只会更新规则/过滤器(如果它已更改)。虽然可以说这是设计使然,但除了进入 Azure 门户并更改它或使用管理客户端(Azure 服务总线 NuGet 包的一部分)来更改它之外,实际上没有其他方法可以处理它。

如果订阅已经存在,我不记得为什么不执行更新,但我怀疑是有原因的。

于 2021-04-08T14:26:08.347 回答