Bug #451
Use disable-timeout for UNIX-socket FCGI if externally managed
| Status: | New | Start: | ||
| Priority: | Normal | Due date: | ||
| Assigned to: | jan | % Done: | 0% |
|
| Category: | mod_fastcgi | |||
| Target version: | - | |||
| Pending: | Resolution: | |||
Description
I like to preconfigure lighttpd with knowledge of several FCGI backend processes, and then rely on its load-balancing behaviour to detect which of those processes are available. This allows me to manually start/stop any number of FCGI backends without bouncing lighttpd.
With UNIX sockets, a missing socket file is like a TCP connection error, so when Lighttpd finds that a socket file is missing, I would expect it to wait "disable-time" before looking for the file again.
What actually happens is that Lighttpd spins without a delay, filling up the disk rather quickly with its error log file. I would be very happy if this "hard" error condition could be changed to a "soft" error.
For reference, my configuration looks something like this:
fastcgi.server = (
".fcgi" =>
("fcgi-01" => ( "socket" => "../fcgi-01/fcgi.sock", "disable-time" => 5 ),
"fcgi-02" => ( "socket" => "../fcgi-02/fcgi.sock", "disable-time" => 5 ),
"fcgi-03" => ( "socket" => "../fcgi-03/fcgi.sock", "disable-time" => 5 ),
"fcgi-04" => ( "socket" => "../fcgi-04/fcgi.sock", "disable-time" => 5 ),
"fcgi-05" => ( "socket" => "../fcgi-05/fcgi.sock", "disable-time" => 5 )
))
-- stephen_purcell