This section describes how to set properties to tune the performance of the adapter for TCP/IP.
Set MaxRequestProcessors to the number of events that are expected to be simultaneously processed by the adapter. For example, set the value to 20 when 20 events are expected to be processed simultaneously.
The value of MaxRequestPoolSize is ideally 1.5 to 2 times the value of the MaxRequestProcessors property. For example, if the value of MaxRequestProcessors is 20, set the value of MaxRequestPoolSize to 30.
You can set connection pooling on for better performance during request processing, because connections to the remote TCP/IP server are pooled and reused. Set ConnectionPoolSize to the number of requests that need to be processed in parallel. For example, set a value of 20 to process 20 requests in parallel.
RetryInterval and MaxAttemptsToRead also affect performance. When you enter values for these properties, the adapter will continue to try to read from the remote TCP/IP server, at intervals specified by RetryInterval, up to the value specified by MaxAttemptsToRead. This is to collate all possible responses from the remote TCP/IP Server (network delays might cause data to come in multiple reads). After the adapter receives the initial response, it will retry for MaxAttemptsToRead times, sleeping every RetryInterval, to see if any more data has come from the TCP/IP server, because the initial response might be incomplete. The adapter then returns the data received in this interval as a response to the request. At the same time, one connection is freed from the connection pool. Otherwise, the adapter will keep waiting for a response until SocketTimeout.
Set these values appropriately to receive a response from the TCP/IP server consistently. Do not keep a high value for MaxAttemptsToRead. Also, do not keep a very high value for Socket Timeout, because it might tie up connections from the connection pool.