Scaling throughput of IBM App Connect Enterprise message flow applications that use LoopBackRequest nodes
Due to the single threaded event loop mechanism that exists in the Node.js architecture, you might need to adopt a specific approach to performance scaling when you are running IBM® App Connect Enterprise message flow applications that useLoopBackRequest nodes. You might find that you do not achieve the scaling that you require just by increasing the additional instances on these message flows. If that is the case, you can continue to scale performance by running instances of such applications in separate integration servers.
The IBM App Connect Enterprise LoopBackRequest node exploits the industry standard Node.js framework and enables message flows to connect with external systems by using user-installed LoopBack® connectors.
Node.js architecture uses the single threaded event loop model that manages the requests and responses of all worker threads by using a non-blocking callback mechanism. In IBM App Connect Enterprise, each integration server is a separate process and, therefore, can host a single Node.js instance. As a consequence, all message flow threads in an integration server must send LoopBackRequest node requests and responses to the external system by using the single threaded event loop in Node.js. These threads then wait for the callback to be sent back through the single threaded event loop after the required action has been completed by the interaction of the LoopBack connector worker thread and the external system.
To achieve throughput scaling of IBM App Connect Enterprise message flow applications that use LoopBackRequest nodes, start by increasing the number of thread instances that are available to the message flow application in a single integration server. Use the Additional instances property on the message flow input node or set the workload management Additional instances property of the message flow to set the number of message flow threads that are available. If further increases to the Additional instances property no longer scale the throughput, run instances of the message flow application in separate integration servers.