如何让 NServiceBus SLR 与 MsmqPersistence 一起工作

How to get NServiceBus SLR working with MsmqPersistence

我创建了一个 Windows 控制台应用程序来测试 NServiceBus v5.2.16。我正在使用 MsmqPersistence。 FLR 在接收方无法处理消息时起作用。但是,一旦尝试了 FLR,SLR 就不会启动。

FLR和SLR根据指南定义如下:

<TransportConfig MaxRetries="5" />
<SecondLevelRetriesConfig Enabled="true" TimeIncrease="00:00:10" NumberOfRetries="3" />

这就是我启动服务总线的方式:

    static void Main(string[] args)
    {
        Console.Title = "CRM Sub Test";

        var busConfiguration = new BusConfiguration();
        busConfiguration.EndpointName("TestQueue");
        busConfiguration.UsePersistence<MsmqPersistence>();
        busConfiguration.EnableInstallers();

        using (var bus = Bus.Create(busConfiguration).Start())
        {
            Console.WriteLine("Press any key to exit");
            Console.ReadKey();
        }
    }

非常感谢任何帮助

此致

这在 Google 组中得到了回答 here. TLDR version: MSMQ Persistence works with subscriptions only and it's not scalable. MSMQ Persistence does not support timeout storage which is required for second-level retries. NHibernate or RavenDB 坚持更适合。