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 or applications communicate through a common messaging bus, usually implemented using Jms or some other messaging server.
Mule goes a lot further by abstracting Jms and any other transport technology away from the business objects used to receive messages from the bus.
- J2EE 1.4 Enterprise Service Bus (ESB) and Messaging broker
- Pluggable connectivity such as JMS (1.0.2b and 1.1), VM (embedded), JDBC, TCP, UDP, multicast, http, servlet, SMTP, POP3, file, XMPP.
- JBI Integration.
- Orchestration of services using WS-BPEL and Mule components and routers.
- Support for asynchronous, synchronous and request-response event processing over any transport.
- Web Services using XFire (STaX-based) Axis or Glue.
- Flexible deployment [Topologies] including Client/Server, Peer-to-Peer, ESB and Enterprise Service Network.
- Declarative and Programmatic transaction support including XA support.
- End-to-End support for routing, transport and transformation of events.
- Spring framework Integration. Can be used as the ESB container and Mule can be easily embedded into Spring applications.
- Highly scalable enterprise server using the SEDA processing model.
- REST API to provide technology agnostic and language neutral web based access to Mule Events
- Powerful event routing based on patterns in the popular EIP book.
- Dynamic, declarative, content-based and rule-based routing options.
- Non-Intrusive approach. Any object can be managed by the ESB container.
- Powerful Application Integration framework
- Fully extensible development model