【问题标题】:Why does NServiceBus on Azure append ".events" to my Topic names?为什么 Azure 上的 NServiceBus 将“.events”附加到我的主题名称?
【发布时间】:2015-06-10 06:13:05
【问题描述】:

我有一个名为“response1”的 Azure 主题,我想订阅使用 NServiceBus 发送到该主题的消息。

我的问题是,NServiceBus 不是订阅 response1,而是在 azure 上创建一个名为 response1.events 的新主题并订阅它。为什么 NServiceBus 会在某些东西上添加“.events”?我该如何制止这种行为?

其他信息:

我的配置:

<connectionStrings>
    <add name="NServiceBus/Transport"
        connectionString="Endpoint=sb://[my-namespace].servicebus.windows.net/;SharedSecretIssuer=[issuer];SharedSecretValue=[key]"></add>

</connectionStrings>

订阅配置:

<UnicastBusConfig>
    <MessageEndpointMappings>

        <add Assembly="Messages" Type="Messages.TheResponse" Endpoint="response1"/>

    </MessageEndpointMappings>
</UnicastBusConfig>

以及我在代码中的总线配置(控制台应用程序):

static void Main(string[] args)
    {
        Console.WriteLine("Subscribing...");

        BusConfiguration busConfiguration = new BusConfiguration();
        busConfiguration.UseTransport<AzureServiceBusTransport>();
        busConfiguration.UsePersistence<InMemoryPersistence>();

        Console.WriteLine("Configuring bus...");
        bus = NServiceBus.Bus.Create(busConfiguration).Start();

        Console.WriteLine("Done. Press Enter to Exit.");
        Console.ReadLine();
    }

【问题讨论】:

    标签: azure nservicebus nservicebus5


    【解决方案1】:

    见Why does NServiceBus on Azure not use my specified endpoint name?

    Nsb 被设计为不这样做,业务端点只能订阅其他业务端点,而不是像主题这样的独立技术构造。

    PS:如果这与您的集成问题有关,并且您打算发布到与业务端点无关的本机主题,那么您可以按照集成示例中的方式进行操作

    【讨论】:

    • 谢谢伊夫。我不得不稍微改变一下我的想法......就像你说的,独立的队列或主题不是重要的事情,端点是重要的事情。所以我现在有一个端点,我们称之为“MyBusiness”。消费者可以向 MyBusiness(队列名称)发送命令并订阅“MyBusiness.Events”上的事件。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-09-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-05
    • 2022-12-25
    • 1970-01-01
    相关资源
    最近更新 更多