7

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

T.Rob
  • 31,522
  • 9
  • 59
  • 103
rauts
  • 1,018
  • 9
  • 21

2 Answers2

10

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.

Dude Pascalou
  • 2,989
  • 4
  • 29
  • 34
Andrew Jones
  • 5,217
  • 6
  • 25
  • 19
  • @Andy: Can NMS be used with MQ Series? i see that there is support for ActiveMQ, MSMQ and EMS. But no MQ Series – rauts Oct 14 '09 at 10:27
  • I don't believe NMS currently supports MQSeries. Unless someone has written a provider for it. You could always write your own. Though perhaps MQSeries ships with its own .NET interop libraries? I did a quick search and found: http://blogs.msdn.com/dotnetinterop/archive/2004/11/08/net-and-mqseries.aspx – Andrew Jones Oct 14 '09 at 12:16
  • Thanks for the repsonse Andy. MQSeries does come with .net interop libraries but it would be great to have all in NMS. Seems like we have to write our own wrapper. Thanks – rauts Oct 14 '09 at 13:04
2

IBM provides the XMS libraries for WebSphere MQ. They are a .NET implementation of the JMS protocol that works with WebSphere MQ.

These are delivered as SupportPac IA9H which is a free download.

T.Rob
  • 31,522
  • 9
  • 59
  • 103
gregwhitaker
  • 13,124
  • 7
  • 69
  • 78