Search code examples
sql-serverarchitecturenservicebusmsdtc

What SQL AlwaysOn option which supports DTC


I have a solution using NServiceBus + SQL that works prefectly in the development environment. In the UAT environment our Ops team wants to host the database on highly available group, which means we cannot enable DTC.

The solution uses NServceBus so I do not have control over the entrie code base and cannot work with DTC disabled without a substanital amount of rework.

The Ops team are trying to maintain their uptime which makes sense considering the applicatoins is business critical.

I understand this functionality is supported until SQL 2016, but is there an alternative to provide some level of redendency?

https://msdn.microsoft.com/en-us/library/ms366279.aspx


Solution

  • I am assuming you are using the default MSMQ transport (which requires DTC in order to ensure exactly-once message processing semantics). Is it an option to switch to the SQL Server transport? It is comparable in terms of performance and feature set and does not escalate to DTC when the same database is used to store the business data tables and the transport tables.