Mule es un bus de servicios empresariales (ESB) ligero y un marco de integración [1] proporcionado por MuleSoft . Tiene una plataforma basada en Java y también puede actuar como intermediario para interacciones entre otras plataformas como .NET mediante servicios web o sockets .
Tiene una arquitectura de agente de objetos escalable y [2] distribuible que puede gestionar interacciones entre sistemas heredados, aplicaciones internas y transportes y protocolos modernos. [3]
Mule tiene un motor de integración, pero la edición comunitaria no admite interfaces de administración avanzada. MuleSoft ofrece una edición empresarial de Mule que proporciona una consola de administración, un registro de servicios y mayor disponibilidad.
Cloudhub es la plataforma de integración basada en la nube como servicio (iPaaS) de Mulesoft, diseñada para conectar aplicaciones, datos y dispositivos con conectores de integración (como uno con Twitter, etc.).
La compatibilidad con AMQP (Advanced Message Queuing Protocol) se basa en el cliente Java RabbitMQ y admite AMQP hasta la versión 0.9.1. [4]
Jakarta Messaging es una API de middleware orientada a mensajes proporcionada por Oracle para la comunicación entre diferentes componentes de una aplicación. Esto proporciona una comunicación basada en mensajes confiable, débilmente acoplada y asincrónica, que admite dos modelos: punto a punto (colas) y publicación-suscripción (temas). Mule admite todas las funciones de las versiones 1.0.2b y 1.1 de la especificación JMS y proporciona un punto final para las mismas. [ cita requerida ]
WMQ o Websphere MQ es un producto de IBM Message Oriented Middleware para la comunicación de sistemas distribuidos. Mule también proporciona soporte para WMQ, denominado Mule WMQ Transport, que funciona con las versiones 7.0, 7.1 y 7.5 y proporciona un punto final para las mismas. [ cita requerida ]
La interfaz de programación de aplicaciones de objetos de mensajes universales forma parte de las metodologías de diseño de alto nivel que se utilizan para describir y definir aspectos de un objeto de datos que se utiliza junto con Mule ESB. La idea es, mediante eventos por etapas, envolver el trabajo en paquetes sensatos y procesarlo en etapas que puedan ajustarse a los modelos de procesamiento basado en transacciones que son útiles en aplicaciones críticas para el tiempo o la misión, como las transacciones financieras, donde se requieren resultados exitosos posteriores para permitir el resultado deseado. Pero si el usuario no proporciona los datos necesarios o se produce un error en tiempo de ejecución , el modelo permitirá una interrupción total del estado, es decir, "no se ha producido ningún daño", y el usuario podrá completar una transacción sin perder demasiado trabajo ni cancelar una transacción completa.
El objeto de mensaje universal define los parámetros que el programa utilizará para las comunicaciones de mensajería interna y sus componentes para establecer y obtener variables según las necesidades del usuario y la funcionalidad del programa.