Implementación de cola de mensajes por parte de Microsoft
Microsoft Message Queuing ( MSMQ ) es una implementación de cola de mensajes desarrollada por Microsoft y desplegada 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 plataformas de servidor convencionales, 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 separados se comuniquen de manera segura. Una cola es una ubicación de almacenamiento temporal desde la que se pueden enviar y recibir mensajes de manera confiable, según lo permitan las condiciones. Esto permite la comunicación a través de redes y entre computadoras que ejecutan Windows y que pueden no estar siempre conectadas. Por el contrario, los sockets y otros protocolos de red asumen que siempre existen conexiones directas.
MSMQ ha estado disponible para los desarrolladores en las plataformas de Microsoft desde 1997, [2] y se ha utilizado comúnmente en software empresarial creado con Visual Studio , tanto en la encarnación nativa anterior a .NET (versión 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). Con WCF, MSMQ se puede utilizar para proporcionar transporte seguro y confiable con un modelo de programación unificado compatible con otros estándares de comunicaciones.
MSMQ es responsable de entregar mensajes de manera confiable entre aplicaciones dentro y fuera de la empresa. MSMQ garantiza una entrega confiable al colocar los mensajes que no llegan a su destino previsto en una cola y luego reenviarlos una vez que se puede llegar al destino. También admite la seguridad y la mensajería basada en prioridades. Se pueden crear colas de mensajes no entregados para ver los mensajes que se agotaron o fallaron por otros motivos.
MSMQ admite mensajes duraderos y no duraderos para lograr un equilibrio entre rendimiento y consistencia al escribir mensajes en el disco o solo en la RAM. Los mensajes no duraderos solo se pueden lograr enviando mensajes exprés a través de colas no transaccionales.
MSMQ también admite transacciones. Permite múltiples operaciones en múltiples colas, con todas las operaciones envueltas en una sola transacción, lo que garantiza que todas o ninguna de las operaciones surtan efecto. Microsoft Distributed Transaction Coordinator (MSDTC) admite el acceso transaccional a MSMQ y otros recursos para lograr un procesamiento transaccional exacto.
Los siguientes puertos se utilizan para operaciones de Microsoft Message Queue Server:
- 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 cuando se inicializa Message Queue Server. 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] Soporte para registrar colas de mensajes públicos en Active Directory , encriptación de 128 bits y soporte de certificado digital, soporte COM completo para propiedades de mensajes (logrando paridad funcional con las llamadas de función API Win32 , soporte completo de nombres de ruta DNS, rendimiento mejorado en aplicaciones multiproceso.
- 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 , soporte de MSMQ para servicios de información de Internet ), alias de cola, multidifusión de mensajes y soporte adicional para el mantenimiento y administración programáticos de colas y MSMQ en sí.
- Versión 4.0, parte de Windows Vista y Windows Server 2008 .
- Las nuevas características incluyen: [6] Subcolas, [7] soporte mejorado para "mensajes venenosos" (mensajes que continuamente no pueden ser procesados correctamente por el receptor) y soporte para recepciones transaccionales de mensajes desde una cola remota.
- Versión 5.0, parte de Windows 7 y Windows Server 2008 R2 .
- Las nuevas características incluyen: [8] compatibilidad con el algoritmo hash seguro 2.0 ( SHA2 ) y todos los algoritmos hash avanzados compatibles con Windows 2008 R2; de forma predeterminada, los algoritmos hash más débiles están deshabilitados.
- Versión 6.0, parte de 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 varias aplicaciones de centros de contacto basadas en la plataforma Windows que utilizan este servicio para notificaciones y servicios internos. [ cita requerida ]
Véase también
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, puertos UDP y puertos RPC que utiliza Message Queue Server. Support.microsoft.com (28 de septiembre de 2011). Consultado el 22 de febrero de 2014.
- ^ "Administrador de la nube". Administrador de la nube de Azure . Dayasagar Roy. Archivado desde el original el 24 de noviembre de 2018. Consultado el 5 de agosto de 2006 .
- ^ "Administrador de la nube". Azure . Dayasagar Roy. Archivado desde el original el 24 de noviembre de 2018. Consultado el 5 de agosto de 2006 .
- ^ "Administrador de la nube". Azure . Dayasagar Roy. Archivado desde el original el 24 de noviembre de 2018. Consultado el 5 de agosto de 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 de colas de mensajes avanzado (AMQP) v1.0" www.iso.org . Consultado el 7 de noviembre de 2017 .
Enlaces externos