我们正在将已有5年历史的servicebus项目升级到最新版本的5 NSB /版本6 NSB Host。如果注释掉MSMQ传输然后取消注释rabbitmq,项目将联系rabbitmq并创建队列。 5秒钟后,它崩溃,没有堆栈跟踪。
球在QA中掉落或者我错过了一些相当微妙的东西。
的nuget
NserviceBus.Transports.RabbitMQ is 2.0
RabbitMQ.Client is 3.3.5.0
NServiceBus.Host is 6.0
NServiceBus.Core is 5.0
NServiceBus.NLog is 1.0
app.config的一部分
<connectionStrings>
<!-- MSMQ Transport config -->
<!-- <add name="NServiceBus/Transport" connectionString="deadLetter=true;journal=true;useTransactionalQueues=true;cacheSendConnection=true" /> -->
<!-- RabbitMQ Transport config -->
<add name="NServiceBus/Transport" connectionString="host=localhost;username=nsb;password=test;" />
</connectionStrings>
这是端点配置。这很简单。
namespace CarWash.Server
{
[EndpointName("V4_CarWash.local")]
public class MessageEndpoint : ServiceBusHibernateBase, IConfigureThisEndpoint
{
public void Customize(BusConfiguration configuration)
{
configuration.UsePersistence<InMemoryPersistence>();
configuration.UseTransport<RabbitMQTransport>();
//configuration.UseTransport<MsmqTransport>();
configuration.EnableSLAPerformanceCounter(TimeSpan.FromSeconds(10));
}
/* <add Messages="DiagnosticMessage" Endpoint="diagnostics.data@mdl-nsb-d"/> */
public IBus Bus { get; set; }
}
}