Mule is a light-weight messaging framework. It is a highly distributable object broker that can seamlessly handle interactions with other applications using disparate technologies, transports and protocols. The Mule framework provides a highly scalable environment in which you can deploy your business components.
Mule manages all the interactions between components transparently whether they exist in the same VM or over the internet and regardless of the underlying transport used.Mule was designed around the Enterprise Service Bus architecture, which stipulates that different components orapplications communicate through a common messaging bus, usually implemented using Jms or some other messaging server. Mule architecture is scalable, highly distributable object broker that can seamlessly handle interactions across legacy systems, in-house application and almost all modern transports and protocols. Mule is feature rich and easy to deploy. The diagram below shows a common scenario with Mule. Mule applications usually consist of many Mule instances across the network. Each instance is a light-weight container that hosts one or more UMO component. Each UMOcomponent will have one or more endpoints that it will send and receive events through.
The key advantage of an ESB is that it allows different applications to communicate with each other by acting as a transit system for carrying data between applications within your enterprise or across the Internet. Mule ESB includes powerful capabilities that include:
Mule ESB is lightweight but highly scalable, allowing you to start small and connect more applications over time. Mule manages all the interactions between applications and components transparently, regardless of whether they exist in the same virtual machine or over the Internet, and regardless of the underlying transport protocol use.