Mule is an integration platform developed by MuleSoft™. It is based on the Enterprise Service Bus (ESB) architecture. Applications communicate by means of a bus that is the initial point for communication of the endpoints using various transport protocols. It provides the consistency of communication and offers central control – orchestration. It helps to prevent tight coupling of components that comes along with point-to-point solutions.
Mule ESB is architecture suitable for the projects that incorporate at least three different applications, use several protocols for transporting or are meant to expand by adding more applications in the future.
Application workflow
The main elements of a mule application are called flows. The flow consists of several building blocks.
An inbound endpoint accepts a message while the outbound endpoint sends it away. These two endpoints can be identical (request-response). Aside from rather generic endpoints (connection over HTTP, JMS, RMI, database, queue etc.), Mule offers more specific connectors for CloudHub, SAP, NetSuite, MongoHQ, PayPal, Amazon and more.
The application is event-driven. When an inbound-endpoint receives a message, an instance of the flow is created and launches. Alternatively, a flow can be activated directly from another flow.
Features
- Software-to-software interactions with Service Oriented Architecture
- Possibility to deploy the application to ESB standalone server, to a cloud or embed it in a web application server
- Message processing independent of the protocol
- Central orchestration
- Scalability
Reference
ARTIN used Mule when developing an integration system for communication between insurance companies and offices of the executor.