我们正在考虑使用ActiveMQ作为消息传输,使用NServiceBus而不是MSMQ,以使Java端点能够通过ActiveMQ直接与.NET端点集成。
默认情况下,NServiceBus端点在涉及MSMQ和SQL Server的分布式事务中运行。当消息传输是ActiveMQ时,NServiceBus中的分布式事务是否具有相同级别的支持?与MSMQ相比,使用ActiveMQ与NServiceBus有任何其他缺点吗?
答案 0 :(得分:1)
答案 1 :(得分:1)
我们实际上已经发现了ActiveMQ的.net客户端的问题 - 它不能很好地支持分布式事务。虽然我们已经尝试与那些提交者合作,但我们仍然无法完全解决这个问题。
此时,如果您想在.net上使用ActiveMQ(使用或不使用NServiceBus),您必须负责重复删除流经系统的所有消息。
我们正在努力在NServiceBus中构建这种基础架构级重复数据删除逻辑,以便不支持分布式事务的RabbitMQ和Azure Service Bus等队列提供与MSMQ相同的行为。