Mulesoft 4.3 New features
Mulesoft has released new version 4.3 and studio 7.5 of mulesoft in April 2020, In this tutorial we have listed Mulesoft 4.3 New Features
Threading Model:
- Mule 4.3 handles threads acts in a different way than Mule 4.2 and 4.1
- In earlier versions, Mule owned and managed three different thread pools, each dedicated to a different Processing Type (CPU_LIGHT, IO, CPU_INTENSIVE)
- Starting with Mule 4.3, those thread pools have been combined into one unique thread pool
Streaming Enhancements:
- Improved JSON Streaming: The JSON reader now supports streaming the entire JSON document, instead of arrays only.
- XML Streaming:The DataWeave reader for the XML format now supports streaming. You need to specify the collectionPath and streaming reader properties to activate streaming
Custom MIME Types:
Starting in Mule 4.3.0, you can set the output directive using the format ID alone, instead of using the MIME type. For example, you might set the output header directive of an expression in the Transform Message component or a Write operation to output json
%dw 2.0 output json --- { Message: “Hello” }
Performance Improvements:
Dataweave improves the performance of memory usage.
Elimination of common subexpressions: DataWeave optimizes the scripts by defining internal variables to represent subexpressions that are repeated, thereby replacing the repeated executions of that subexpression with a single execution
%dw 2.0 output json --- { id: payload.message.id, code : payload.message.code, name : payload.message.users[0].name, email: payload.message.users[0].email }
Internally, variables are defined for each repeated expression so that they execute only once.
%dw 2.0 output json var tempVariable1 = payload.message var tempVariable2 = tempVariable1.users[0] --- { id: tempVariable1.id, code : tempVariable1.code, name : tempVariable2.name, email: tempVariable2.email }
Memory management improvements:
Memory management is now centralized. Several memory management strategies are included, such as pooling direct memory or using heap memory exclusively.
DataWeave Modules:
- The Mule 4.3.0 release includes Dataweave 2.3.0 features(Dataweave 2.3.0 new features)
- DataWeave has added the Types (dw::core::Types) module to support type introspection. This module includes a number of functions and new types.
Improvements to Parsing Error Messages:
Parsing error messages now reflect more accurately missing tokens, incomplete definitions, and other common issues. Tips and examples of how to solve the issues are also included.
Improvements in core components:
Until Successful component: Max Retries (maxRetries) and Milliseconds Between Retries (millisBetweenRetries) now support a number or an expression that resolves to a number.
Batch Aggregator component adds the preserveMimeTypes attribute Aggregated records are passed into the aggregator as an array containing each record’s payload. However, the MIME types associated with those payloads are not preserved by default. You can preserve record’s MIME types by specifying the preserveMimeTypes attribute in a batch aggregator.
Automate test creation:
- Automatically generate unit and integration tests for your Mule apps with the MUnit test recorder to improve test coverage across Mule apps.
- MUnit test recorder listens to the execution of a sample request-response to automatically write mock and assertion tests at design-time.