Microsoft Message Queuing ( MSMQ ) es una implementación de cola de mensajes desarrollada por Microsoft e implementada en sus sistemas operativos Windows Server desde Windows NT 4 y Windows 95. Windows Server 2016 y Windows 10 también incluyen este componente. Además de su compatibilidad con la plataforma de servidor principal, MSMQ se ha incorporado a las plataformas Microsoft Embedded desde 1999 y el lanzamiento de Windows CE 3.0. [ 1 ]
Descripción general
MSMQ es un protocolo de mensajería que permite que las aplicaciones que se ejecutan en servidores o procesos independientes se comuniquen de forma segura. Una cola es un espacio de almacenamiento temporal desde el cual se pueden enviar y recibir mensajes de manera confiable, según las condiciones lo permitan. Esto posibilita la comunicación a través de redes y entre equipos con Windows que no siempre están conectados. En cambio, los sockets y otros protocolos de red presuponen que siempre existen conexiones directas.
MSMQ ha estado disponible para desarrolladores en plataformas de Microsoft desde 1997, [ 2 ] y se ha utilizado comúnmente en software empresarial creado con Visual Studio , tanto en su versión nativa anterior a .NET (versiones 5 y 6) como en Visual Studio .NET . Microsoft también ha incorporado MSMQ en su marco de tecnología de mensajería, Windows Communication Foundation (WCF). Bajo WCF, MSMQ se puede utilizar para proporcionar transporte seguro y confiable con un modelo de programación unificado compatible con otros estándares de comunicación.
MSMQ se encarga de la entrega fiable de mensajes entre aplicaciones internas y externas a la empresa. Para ello, coloca los mensajes que no llegan a su destino en una cola y los reenvía una vez que este sea accesible. Además, admite mensajería segura y priorizada. Se pueden crear colas de mensajes no entregados para gestionar los mensajes que hayan caducado o fallado por otros motivos.
MSMQ admite mensajería persistente y no persistente para encontrar un equilibrio entre rendimiento y consistencia, escribiendo los mensajes en disco o solo en la RAM. La mensajería no persistente solo se puede lograr enviando mensajes express a través de colas no transaccionales.
MSMQ también admite transacciones. Permite realizar múltiples operaciones en varias colas, todas ellas encapsuladas en una única transacción, lo que garantiza que todas o ninguna de las operaciones se ejecuten. El Coordinador de Transacciones Distribuidas de Microsoft (MSDTC) admite el acceso transaccional a MSMQ y otros recursos para lograr un procesamiento transaccional exacto.
Los siguientes puertos se utilizan para las operaciones de Microsoft Message Queuing:
- TCP: 1801
- RPC: 135, 2101*, 2103*, 2105*
- UDP: 3527, 1801
- * Estos números de puerto pueden incrementarse en 11 si se utiliza la opción inicial de puerto RPC al inicializarse Message Queuing. Se consulta el puerto 135 para descubrir los puertos 2xxx. [ 3 ]
Referencias de versiones
- Versión 1.0 (mayo de 1997). Compatible con Windows 95 , Windows NT 4.0 SP3, Windows 98 y Windows Me .
- Versión 2.0, incluida con Windows 2000 .
- Las nuevas características incluyen: [ 4 ] Compatibilidad con el registro de colas de mensajes públicas en Active Directory , cifrado de 128 bits y compatibilidad con certificados digitales, compatibilidad total con COM para propiedades de mensajes (logrando paridad funcional con las llamadas a funciones de la API de Win32) , compatibilidad total con nombres de ruta DNS, rendimiento mejorado en aplicaciones multihilo.
- Versión 3.0, incluida con Windows XP (Professional, no Home Edition) y Windows Server 2003 .
- Las nuevas características incluyen: [ 5 ] Mensajería de Internet (referencia a colas a través de HTTP, mensajes con formato SOAP , compatibilidad de MSMQ con los Servicios de Información de Internet ), alias de cola, multidifusión de mensajes y compatibilidad adicional para el mantenimiento programático y la administración de colas y del propio MSMQ.
- Versión 4.0, incluida en Windows Vista y Windows Server 2008 .
- Versión 5.0, incluida en Windows 7 y Windows Server 2008 R2 .
- Versión 6.0, incluida en Windows 8 y Windows Server 2012 .
- Versión 6.3, parte de Windows 8.1 y Windows Server 2012 R2 .
Usos
MSMQ se utiliza ampliamente en diversas aplicaciones de centros de contacto basadas en la plataforma Windows, que utilizan este servicio para notificaciones y servicios internos.
Véase también
- Lista de componentes de Microsoft Windows
- IBM MQ , tecnología similar de IBM
- Java Message Service , tecnología similar en la plataforma Java
- Amazon Simple Queue Service es un servicio de mensajería estandarizado ofrecido por Amazon.com a cambio de una tarifa por uso. Permite a los usuarios alquilar acceso a la mensajería sin necesidad de mantener su propio servidor.
- RabbitMQ , un intermediario de colas de mensajes de código abierto que implementa una versión preestándar de AMQP. [ 9 ]
Referencias
- ↑ "Servicio de cola de mensajes de Microsoft Windows CE 3.0" . Microsoft Developer Network. 29 de junio de 2006. Consultado el 25 de noviembre de 2009 .
- ↑ InformationWeek News conecta a la comunidad de tecnología empresarial . Informationweek.com (4 de febrero de 2014). Consultado el 22 de febrero de 2014. Archivado el 10 de abril de 2008 en Wayback Machine .
- ↑ Puertos TCP, UDP y RPC utilizados por Message Queuing . Support.microsoft.com (28/09/2011). Consultado el 22/02/2014.
- ↑ "Administrador de la nube" . Administrador de la nube de Azure . Dayasagar Roy. Archivado del original el 24/11/2018 . Consultado el 05/08/2006 .
- ↑ "Administrador de la nube" . Azure . Dayasagar Roy. Archivado del original el 24/11/2018 . Consultado el 05/08/2006 .
- ↑ "Administrador de la nube" . Azure . Dayasagar Roy. Archivado del original el 24/11/2018 . Consultado el 05/08/2006 .
- ↑ Subcolas en MSMQ 4.0
- ↑ "Administrador de la nube" . Azure . Dayasagar Roy . Consultado el 5 de agosto de 2006 .
- ↑ "ISO/IEC 19464:2014 - Tecnología de la información - Especificación del Protocolo avanzado de colas de mensajes (AMQP) v1.0" . www.iso.org . Consultado el 7 de noviembre de 2017 .
Enlaces externos
- Documentación
- Comunicación y servicios de Windows
- Middleware orientado a mensajes
- Componentes de Windows
- Integración de aplicaciones empresariales