This tutorial shows how different parts of an application can be split between different processes using Callable Flow nodes. The example uses an application which provides a raw HTTP/JSON service, and two separate applications which provide differently formatted timestamps for use in other flows.
This example uses a Callable Flow to provide that timestamp service, so it can be invoked from one or more message flows, but is not exposed outside the Integration Bus environment. A Mapping node is used to include the result of invoking the callable flow in the JSON response from the main flow.
A further extension to this scenario is that the calling flow can dynamically switch which flow it calls based on input data. You can also deploy updates to the Callable Flows without changing or redeploying the invoking flow.