We are basically trying to restrict http connections by configuring max threads count element in a thread subsystem. This works perfectly fine when incoming connection requests are within the configured max thread count limit. The moment incoming request exceeds the configured limit, JBOSS internally accepts TCP socket and tries allocate it to the freed thread; the problem here is that it may not find any free request processing thread as all configured threads are busy serving to other clients which in turn causes increase in connection establishment time at JBOSS server. If client terminates connection (TCP socket) due to timeout or for some reasons then the accepted TCP socket at JBOSS move on to CLOSE_WAIT state. Also this CLOSE_WAIT last long for minutes that causes increase in file descriptor count.