Some time ago, I used mod_fcgid on my server. Everything went fine, except when dotclear2 became needed. After some test, I concluded that it wont work with mod_fcgid given because of certain rewrite rules. This seems to be a known issue, and the only solution at the time of writing it to use mod_fastcgi in its stead. Difference between mod_fastcgi and mod_fcgid is mostly at license level. Although mod_fastcgi is somewhat non-free, and after some troubles with the configuration, I decided to give it a try ;-)[1]
After configuring two vhosts, one with mod_fcgid and one with mod_fastcgi, I benchmarked a simple "Hello world" program on Apache2. Results are speaking by themselves:
Server Software: Apache/2.2.3
Server Hostname: xxx
Server Port: 80
Document Path: /
Document Length: 11 bytes
Concurrency Level: 5
Time taken for tests: 48.867314 seconds
Complete requests: 10000
Failed requests: 13
(Connect: 0, Length: 13, Exceptions: 0)
Write errors: 0
Non-2xx responses: 13
Total transferred: 2959503 bytes
HTML transferred: 119256 bytes
Requests per second: 204.64 [#/sec] (mean)
Time per request: 24.434 [ms] (mean)
Time per request: 4.887 [ms] (mean, across all concurrent requests)
Transfer rate: 59.14 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.0 0 0
Processing: 1 23 360.7 1 12064
Waiting: 1 23 360.7 1 12064
Total: 1 23 360.7 1 12064
Percentage of the requests served within a certain time (ms)
50% 1
66% 1
75% 1
80% 1
90% 1
95% 1
98% 17
99% 21
100% 12064 (longest request)
Server Software: Apache/2.2.3
Server Hostname: xxx
Server Port: 80
Document Path: /
Document Length: 11 bytes
Concurrency Level: 5
Time taken for tests: 18.150717 seconds
Complete requests: 10000
Failed requests: 0
Write errors: 0
Total transferred: 2950000 bytes
HTML transferred: 110000 bytes
Requests per second: 550.94 [#/sec] (mean)
Time per request: 9.075 [ms] (mean)
Time per request: 1.815 [ms] (mean, across all concurrent requests)
Transfer rate: 158.67 [Kbytes/sec] received
Connection Times (ms)
min mean[+/-sd] median max
Connect: 0 0 0.0 0 0
Processing: 1 8 194.4 2 11504
Waiting: 1 8 194.4 2 11504
Total: 1 8 194.4 2 11504
Percentage of the requests served within a certain time (ms)
50% 2
66% 3
75% 3
80% 3
90% 4
95% 12
98% 17
99% 20
100% 11504 (longest request)
I do not know if I'm doing wrong with mod_fcgid, but the fact is that mod_fastcgi operates at 250 request/second faster. No need to say, dotclear2 is coming soon on this blog :-)
[1] thank's Pep :-)