Mule 4 (the short name for Mule runtime version 4 which is the lightweight integration engine behind MuleSoft’s Anypoint Platform) runs the Mule applications, supports the domains and the policies and it’s the industry’s only runtime that can be used to integrate data and applications across legacy systems, SaaS applications and APIs.
At our webinar on the 10 things to consider when planning your Mule 4 migration, Dharshi Kanags, Solutions Engineer, Channel and Alliances UK&I at MuleSoft, gave us an overview of the most important benefits that come with Mule 4.
Version 4 was released in March 2018 and it was a major evolution of the core runtime engine, enabling developers to deliver innovative solutions faster. The capabilities that differentiate Mule 4 from previous versions can be broadly categorised into three common themes: speed, power and extensibility.
Mule 4 accelerates developer velocity, adds more power to manage at scale, and provides new ways to extend solutions. There is also a fourth one which is not shown in the diagram, because it is not specific to a concept or a feature, but a recurring theme in Mule 4. That fourth element is simplicity. Mule 4 has been simplified for ease of use, task simplification, improved maintenance and enhanced developer experience.
Improved speed of delivery
Mule 4 can improve application development speed with up to 50% fewer steps and concepts to learn, and that is a major contributor in simplifying the developers’ experience. There is simplified syntax, a simplified message model which is a key part of Mule 4 runtime, data transformation simplified through Dataweave; and these are just a few of the many capabilities of Mule 4.
For example, if you're an integration developer, with the simplification that Mule 4 brings, you will spend less time and effort on development, which means that there is more time to focus on delivering solutions that match the business user requirements, more time to focus on innovation, and you can be more agile and deliver value to your business users or your customers.
Power – Self tuning runtime engine
Mule 4 has a new reactive, non-blocking execution engine which makes it possible to achieve optimal performance without having to do manual tuning steps like declaring exchange patterns, processing strategies or managing thread pools. The runtime self-tunes or sizes the pools automatically and dynamically for different workloads, so there are no complex tuning requirements to achieve optimum performance.
Power – Easy to upgrade
In Mule 4 there's a classloader isolation that helps to simplify the upgrade. The way classloading works has changed in Mule 4; there is a clear separation between the classloaders for the Mule application, the runtime and the Anypoint connectors, so any library changes that occur internally do not affect the application itself.
The connectors are distributed outside the runtime as well and that allows to get connect enhancements and fixes without having to upgrade your runtime or vice versa. So if your organisation has application networks with enterprise grade systems or fast IoT connections and you're operating at scale, the optimised runtime and self-tuning capabilities along with the simplified upgrade, allow you to operate and manage your systems and applications at scale.
Extensibility – Mule SDK
Mule 4 comes with a new SDK to easily extend Mule. It provides a simple programming model, automatically enforcing consistency and cross cutting functionality. We can use the SDK to build different components or modules, like creating new Anypoint connectors to share at Anypoint Exchange. We can also automatically generate a connector from the API specification and publish it to Anypoint Exchange to be available to the community. These API specifications can be in RAML or in OAS (open API specification). The Mule application interacts with the new runtime through the extensions API but as a developer you don't have to learn the details of these APIs, because the SDK framework takes care of that for you.
This decoupling provides an upgrade path and a maintenance path. You can build new connectors or modules that are both backward and forward compatible across past and future versions of the runtime and add any new features to the runtime without changing each connector individually.
In summary, Mule 4 improves speed of delivery with the simplification of the developer experience allowing developers to be more agile and delivered value to business. It also provides power and scalability through optimised runtime and self-tuning capabilities. Finally, Mule 4 allows for extensibility to add new features and modules without any upgrade and compatibility concerns.
Other useful links: