I'm running an instance of Apache Tomcat (5.5) on a Windows 2008 platform. I think I'm seeing an issue related to concurrent file access / locking.
When the number of concurrent HTTP threads is increased beyond the default setting (150), I see (using a site monitoring tool) an increasing number of 'unnatural' delays when serving some static content (.js .gif .png etc). By this, I mean that the server takes 20 seconds plus before starting to send or taking 30 seconds to serve a small (2KiB) file.
When Tomcat is busy (serving over 300 threads), CPU usage averages around 50-60% and disk usage is around 10-30mbps.
Are there any tools I can use for Java to establish whether this is the case? Would the Tomcat APR / Apache Native Library potentially resolve this?
Alternatively, is there anything else I should be looking into?
Screenshot of site analysis tool: