You are viewing an older version of this section. Click here to navigate to the latest version.


Streaming enables efficient processing of large data objects such as files, documents, and records by streaming the data through Mule ESB rather than reading the whole thing into memory. Streaming provides the following advantages:

  • Allows flows to consume very large messages in an efficient way

  • Message payloads are not read into memory

  • Simple routing rules based on message metadata are still possible

  • You can combine streaming and non-streaming endpoints

Streaming Transports Connectors and Modules

The following transports, connectors and modules support streaming:

Streaming Transformers and Filters

Many transformers and filters can read input streams, process the contents, and send them on. However, most of these do not process the stream in real time; instead, they read the stream, load it into memory, process it, and then send it on. Therefore, transformers and filters can become a bottleneck in your application if you regularly stream large files.

The following transformers and filters do support true streaming and process the data as streams without loading them into memory first: