Increasing the number of concurrent transfers for the Connect:Direct bridge

To increase the number of concurrent transfers that the Connect:Direct® bridge agent can process, you must change three agent properties. You must also increase the maximum number of connections that the Connect:Direct node accepts.

The maximum number of concurrent transfers that a Connect:Direct bridge agent can process depends on the values of certain agent properties. The maxSourceTransfers and maxDestinationTransfers agent properties have a default value of five transfers for a Connect:Direct bridge agent. This default value is lower than the default of 25 transfers for other types of agent. A Connect:Direct bridge, where the agent is configured with the default values of maxSourceTransfers and maxDestinationTransfers, can process a maximum of 10 transfers at any one time: five transfers where the agent is the source, and five transfers where the agent is the destination.

These default values ensure that the Connect:Direct bridge agent does not exceed the maximum number of API connections to the Connect:Direct node. A Connect:Direct bridge agent with the default configuration uses a maximum of 10 API connections to the Connect:Direct node. The maximum number of connections accepted by a Connect:Direct node on UNIX is controlled by the api.max.connects Connect:Direct parameter. For a Connect:Direct node on Windows, the equivalent parameter is max.api.connects.

If the rate at which your Connect:Direct bridge carries out large numbers of file transfers is not sufficient, you can increase the number of concurrent transfers that the Connect:Direct bridge agent processes. Change the following agent properties for the Connect:Direct bridge agent:
maxSourceTransfers
Set this property to a value that is larger than 5, but smaller than or equal to 25. If you choose a value that is larger than 25, the agent might run out of memory unless you increase the amount of memory that is available to the JVM used by the agent.

maxDestinationTransfers
Set this property to a value that is larger than 5, but smaller than or equal to 25. If you choose a value that is larger than 25, the agent might run out of memory unless you increase the amount of memory that is available to the JVM used by the agent.

ioThreadPoolSize
The default value of ioThreadPoolSize is 10. This property restricts the number of Connect:Direct node API connections for transfers where the Connect:Direct bridge agent is the source agent. These transfers are from Connect:Direct to IBM® MQ Managed File Transfer. Use the following guidance to set the value of this property:
  • If the value of maxSourceTransfers is smaller than the value of maxDestinationTransfers, set ioThreadPoolSize to double the value of maxSourceTransfers or 10, whichever is the larger
  • If the value of maxSourceTransfers is larger than the value of maxDestinationTransfers, set ioThreadPoolSize to the sum of maxSourceTransfers and maxDestinationTransfers
In addition to these agent properties, you must also change the maximum number of concurrent API connections for the Connect:Direct node that is part of the Connect:Direct bridge. The Connect:Direct parameter that controls this number is api.max.connects if your node is on UNIX, or max.api.connects if your node is on Windows. Make the following changes to the appropriate parameter:
api.max.connects (if the node in your Connect:Direct bridge is on UNIX)
Set this parameter to a value larger than the sum of maxSourceTransfers and maxDestinationTransfers. The default value of the api.max.connects parameter is 16. For more information about how to set this parameter, see the Connect:Direct documentation.

max.api.connects (if the node in your Connect:Direct bridge is on Windows)
Set this parameter to a value larger than the sum of maxSourceTransfers and maxDestinationTransfers. The default value of the max.api.connects parameter is 10. For more information about how to set this parameter, see the Connect:Direct documentation.