https://issues.apache.org/bugzilla/show_bug.cgi?id=56308
Bug ID: 56308
Summary: 1 second delay in handle request kills performance for
web services
Product: Apache httpd-2
Version: 2.5-HEAD
Hardware: PC
Status: NEW
Severity: normal
Priority: P2
Component: mod_fcgid
Assignee: [email protected]
Reporter: [email protected]
With batched requests (i.e. loading 35 dynamically generated image tiles)
mod_fcgid if it has fewer process-nodes than connections processes the last N
requests at 1 per second. (Where N is the number of connections greater than
number of process-nodes.)
This scenario can be observed with a simple test web page that makes a group of
requests (Firefox opens 6 concurrent connections) to an Apache instance with
mod_fcgid configured to run fewer than 6 instances of the handling FastCGI
application. For example if mod_fcgid is configured to run a single instance
of the application (FcgidMaxProcessesPerClass 1) then the first 30 requests are
handled in approximately 150 milliseconds, and the last five take an additional
5 seconds.
The guilty logic in mod_fcgid is located in the handle_request function of
fcgid_bridge.c, where it calls apr_sleep(apr_time_from_sec(1)) if it can't get
an available procnode.
For our application a sleep of 2-5 milliseconds would be much preferable (up to
10 milliseconds would be acceptable in context of our FastCGI application and
related web services).
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]