Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

NServiceBus with SQL Server Message Transport

Is there any way to use SQL Server as physical message transport instead of using built in MSMQ message transport with NServiceBus ?

Thanks

like image 830
Yoann. B Avatar asked May 07 '10 15:05

Yoann. B


2 Answers

SQL Server contains built-in messaging in form of Service Broker. This gives you a vary efficient, high-speed, high-throughput, asynchronous and reliable messaging transport between SQL Server instances. The fact that is only targeting SQL instances is not as bad as it sounds, considering that SQL Server Express support Service Broker and I know deployments that use tens, hundreds of Express, instances geo-distributed, to exchange messages with central higher edition SQL instances.

The major problem is lack of a C#/.Net API, there is no support for WCF channels, nor NServiceBus. There are various projects trying to address this, with more or less success. Ultimately it will depend on what is the driving factor for the decision: integration with an existing messaging bus like NServiceBus, or raw performance and reliability at the cost of depending on sQL Server proprietary bus.

like image 177
Remus Rusanu Avatar answered Sep 30 '22 23:09

Remus Rusanu


Sorry for answering such an old topic, but there is a .Net message bus project using SQL server as a message transport: NGinn.MessageBus (at http://code.google.com/p/nginn-messagebus/ ). It's my pet open source project created specifically for applications that are already using SQL Server. The project is mature enough to be used in production. More information can be found at the project website.

like image 32
nightwatch Avatar answered Oct 01 '22 00:10

nightwatch