It's not a secret anymore!
The moose likes Tomcat and the fly likes How to deal with slow client connections? Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login
JavaRanch » Java Forums » Products » Tomcat
Bookmark "How to deal with slow client connections?" Watch "How to deal with slow client connections?" New topic

How to deal with slow client connections?

John De Vries

Joined: Feb 03, 2008
Posts: 4

I'm using Tomcat to serve static files. But I often get clients that are to slow, and thus causing the max thread limit to be reached. For example this client:

-Stage: Service (other stages examples are: Finishing, Ready, Keepalive).
-Time: 1414057 ms (23 minutes)
-B Sent: 24 KB
-B Recv: 0 KB
-Request: GET /xxxx/xxxxx.jpg HTTP/1.1

Other Tomcat info:
-Free memory: 47.58 MB Total memory: 508.06 MB Max memory: 508.06 MB
-Max threads: 150 Current thread count: 87 Current thread busy: 29
-Max processing time: 1390120 ms Processing time: 70988.9 s Request count: 118298 Error count: 2686 -Bytes received: 0.00 MB Bytes sent: 1657.52 MB

My Tomcat settings are defaults plus:
<Connector port="8080" protocol="HTTP/1.1"
redirectPort="8443" />

This slow client (above) is retrieving .jpg file, and used 23 minutes to transfer only 24KB. I would like Tomcat to automatically kill of timeout these connections. How can I achieve this?
Tim Holloway
Saloon Keeper

Joined: Jun 25, 2001
Posts: 17280

24KB in 23 minutes isn't just a slow data link. I used to consider 24KB about optimal page size back when I dialed in at 9600 baud, and you can bet I wasn't waiting 23 minutes for each page.

Either there's a serious network configuration issue, the application extraordinarily inefficient, or there's a whole raft of side information that's bloating up that presumed 24KB into a multi-megabyte actual transfer.

An IDE is no substitute for an Intelligent Developer.
I agree. Here's the link:
subject: How to deal with slow client connections?
jQuery in Action, 3rd edition