Introduction to Mule ESB
Mule ESB is a leading Enterprise Service Bus from MuleSoft Inc. It is a light-weight Java based Integration platform. It comes in two different flavors: Community Edition and Enterprise Edition. Mule ESB was founded as an open-source product in 2003 and has grown leaps and bounds since then.
On top of strong Mule ESB backbone, a series of complementary integration tools have been built/acquired by MuleSoft in order to create an Integration Product Suite in line with its commercial counterparts such as Oracle. However, as most of these products are developed from scratch, they don’t face integration/unification/duplication challenge as other vendors do. Another significant difference is its Cloud strategy. MuleSoft claims to provide platform independence for all Mule ESB projects – i.e., projects deployed on on-premise data centers can be easily exported to its Cloud platform (CloudHub) and vice versa with zero or very minimal changes.
Given below is high level overview of products from MuleSoft.
Mule ESB
Mule ESB is a light-weight Java based Enterprise Service Bus. It started as an open-source project in 2003 built on the principles of Enterprise Integration Patterns. Mule ESB provides tools to avoid point-point integrations with the help of an extensive array of connectors. It comes in two flavors: Community Edition (CE) and Enterprise Edition (EE). While CE provides basic tools necessary for Application Integration, EE provides more value-adds in terms of Clustering, High Availability and more importantly Enterprise Support.
Mule Studio
Mule Studio is an eclipse based Development Environment for all Mule products. It provides both graphical and XML views of the Mule project artefacts. Data Mapper provides powerful graphical mapping capabilities to integrate multitude of data types including Excel, Java, CSV etc., Mule Studio also supports Data Sense – an automatic way of discovering data types for Mapping. Mule Studio can be used to deploy applications to both on-premise and cloud platforms.
Mule’s CloudHub is a Mule hosted amazon-cloud based platform. Mule offers subscription based services for customers interested. Mule Applications deployed in traditional data centers can be easily exported to CloudHub with very minimal changes. This saves lot of time for customers who are looking to move to Cloud in future.
Anypoint Platform offers tools necessary to integrate business applications both on-premise and cloud-based. It comprises of Anypoint Connectors, Anypoint Service Registry, Anypoint DataMapper and Anypoint Enterprise Security.
- Anypoint Connectors: provide optimized connection to various transports and third-party APIs such as JDBC, JMS, Facebook, Twitter etc., These could be both on-premise and cloud-based.
- Anypoint Service Registry: is a SOA Governance tool to catalog, publish and manage services throughout their life cycle. It is cloud-hosted product though provides cached on-premise component for offline use.
- Anypoint DataMapper: Pre-built in Mule Studio, it offers graphical mapping facilities to map XML, JSON, CSV, POJOs, Excel, and many more data types.
- Anypoint Enterprise Security: is useful when we need data encryption, secure endpoints through standards such as SAML, OAuth, and WS-Security or maintain data confidentiality.
Mule Management Console is an administration and monitoring application to locally or remotely manage Mule instances. It can be used to cluster multiple Mule instances, monitor Mule performance and also create simple BI related activities such as alerts and business events.
In summary, Mule platform provides tools necessary for integrating, securing, monitoring and managing enterprise services. Please refer to product-specific training lessons to learn more.
Upgrades in Mule ESB 3.6
If you have read the Mule ESB 3.6 release notes then you already know what I’m about to say, but just to recap, here we go…
A lot of effort was put in 3.6 to upgrade our libraries stack. Even though we try to stay innovative, it doesn’t make sense to reinvent the wheel all the time, so we use a lot of third-party libraries. However, keeping those up-to-date while maintaining our strict backwards compatibility policy is something that’s really difficult to do. As a result, we haven’t always managed to keep up.
When Performance Matters
An application and its environment should be designed with performance in mind. The application, the server it runs on, the database it communicates with, the network it communicates over: all of these elements should be performant. Creating an efficient, elegant mechanism is not only important for a business, but a matter of skill and pride for engineers.
Although true, perhaps that is not the answer one is looking for. When does performance matter? is too broad. The following discussion helps clarify the question, how to answer it, and what to do about it.


