In step 611, if the rejection rate is below the lower threshold, the process manager 135A ends one of the processes that is currently processing TCP requests on the server 130A. By deleting a process, all of the remaining processes on the server 130A run at a slightly increased speed. Thus, although the server 130A will not be able to process as many TCP requests in parallel, each one will be processed faster. However, with a lower number of processes, the server's rejection rate is expected to increase, particularly if the rate of receipt of TCP requests remains the same.
If, as a result of steps 608 and 610, it is determined that the rejection rate falls within the upper and lower thresholds, the number of concurrently executing processes is maintained for the moment. With subsequent passes through the method 600, the rejection rate may creep up or down, which will result in an appropriate adjustment to the number of processes. Accordingly, by self-monitoring the server's 130A rejection rate, the server 130A can beneficially manage the number of processes concurrently executing to improve response time performance.