JMS equivalent in .Net

rauts picture rauts · Oct 13, 2009 · Viewed 8.2k times · Source

I am trying to make an common abstract interface over the messaging infrastructure in our company. The design goal is to 2 fold. 1 is to hide the complexity of programming from the developers (i know its not very complex but still simplify it further) and 2 is to make the developers independent of the vendor specific messaging infrastructure (i.e. it can be MQSeries or EMS or MSMQ).

The very common option is using the WCF layer over the messaging infrastructure. Use the MQSeries Custom channel for WCF or use EMS custom channle for WCF. But both are ruled out due to lack of proper version of MQSeries and EMS.

Can someone please suggest what are the possible solutions to this problem. One which i can think of the to have a custom wrapper like JMS. Has anyone ever tried something similar before. Any help would be fantastic.

by the way, i am trying to create this wrapper in C# 3.5.

Regards

Answer

Andrew Jones picture Andrew Jones · Oct 13, 2009

There's NMS, which is a .NET implementation of the JMS protocol. It comes with a provider which works with ActiveMQ as the underlying message broker.

It might also be worth checking out some of the excellent open source Service Bus implementations for .NET which provide further useful messaging abstractions: NServiceBus, MassTransit and Rhino Service Bus come to mind.