2009-10-13 19 views
6

Estoy tratando de hacer una interfaz abstracta común sobre la infraestructura de mensajería de nuestra empresa. El objetivo del diseño es 2 veces. 1 es ocultar la complejidad de la programación de los desarrolladores (sé que no es muy complejo pero simplificarlo aún más) y 2 es hacer que los desarrolladores sean independientes de la infraestructura de mensajería específica del vendedor (es decir, puede ser MQSeries o EMS o MSMQ).JMS equivalente en .Net

La opción más común es usar la capa WCF sobre la infraestructura de mensajería. Use el canal personalizado de MQSeries para WCF o use el canal personalizado EMS para WCF. Pero ambos están descartados debido a la falta de una versión adecuada de MQSeries y EMS.

¿Puede alguien sugerir por favor cuáles son las posibles soluciones a este problema. Uno en el que puedo pensar que tiene un envoltorio personalizado como JMS. ¿Alguien ha intentado algo similar antes? Cualquier ayuda sería fantástica.

por cierto, estoy tratando de crear esta envoltura en C# 3.5.

Saludos

Respuesta

8

Hay de NMS, que es una aplicación .NET del protocolo JMS. Viene con un proveedor que trabaja con ActiveMQ como intermediario de mensajes subyacente.

También podría valer la pena revisar algunas de las excelentes implementaciones open source de Service Bus para .NET que proporcionan más abstracciones útiles de mensajes: NServiceBus, MassTransit y Rhino Service Bus me vienen a la mente.

+0

@Andy: ¿Se puede usar el NMS con la serie MQ? Veo que hay soporte para ActiveMQ, MSMQ y EMS. Pero no MQ Series – rauts

+0

No creo que NMS sea compatible actualmente con MQSeries. A menos que alguien haya escrito un proveedor para ello. Siempre puedes escribir el tuyo. Aunque quizás MQSeries se distribuya con sus propias librerías de interconexión .NET? Hice una búsqueda rápida y encontré: http://blogs.msdn.com/dotnetinterop/archive/2004/11/08/net-and-mqseries.aspx –

+0

Gracias por el repsonse Andy. MQSeries viene con bibliotecas de interconexión .net, pero sería genial tenerlo todo en NMS. Parece que tenemos que escribir nuestro propio contenedor. Gracias – rauts

2

IBM proporciona las bibliotecas XMS para WebSphere MQ. Son una implementación .NET del protocolo JMS que funciona con WebSphere MQ.

Se entregan como SupportPac IA9H que es una descarga gratuita.