On 17/10/2012 10:49, André Warnier wrote: > 1) So it means that if a client connects to the server, but does not > send any request line for a while on that connection, the server will > allocate a thread to serve the request; this thread will wait up to 20 s > (on HTTP) or 60 s. (on HTTPS), before timing out and returning to the > pool of available threads. > Of course only a malicious client would do that..
Nope. This is the NIO connector. The request line is read using non-blocking IO. The (simulated) blocking IO only starts once the first header is received and continues until the entire request is received. It then goes back to non-blocking for the next request line. > 2) it also means that a perfectly non-malicious client can connect to > the server, and send a first request on the connection; the server will > allocate a thread to handle this request; and then, if the same client > has no more requests to send for a while, this thread will nevertheless > remain waiting on this connection for 20 s. (HTTP) or 60 s. (HTTPS), > just in case the client /would/ send another request on it. > During this time, the thread is unavailable to process other client > requests. Again, nope. The thread is released between the requests. Mark --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org