Reinis Rozitis | 2 Dec 16:53

Forced handle-req timeout

Hello,
in some older releases (til 1.4.11 or even earlier) lighttpd had hardcoded 
request handling timeout - eg time lighttpd waits response to be generated 
from backend (php) after sucessfull connection. If it was exceeded the 
request was closed and php child freed. By default the timeout was 360 secs 
(or something like that (not a configurable value)) I've changed it to 30 to 
be inline with php's max_execution_time ..

It was good because in some scripts where php uses sockets sometimes it 
doesnt honour its own script max execution time so webserver ends up with a 
lot of requests being in handle-req state (according to server-status).

I can't find this in 1.4.18 anymore (or it has been moved) and my changes to 
those older versions are gone (by mistake). So maybe somebody can point me 
to the right source where something like that could be implemented/changed?

wbr
Reinis 

Reinis Rozitis | 2 Dec 17:05

Re: Forced handle-req timeout

Actually irronicaly after writing the mail I found the old code in 
mod_fastcgi.c in TRIGGER_FUNC(mod_fastcgi_handle_trigger) { ...

if (srv->cur_ts < con->request_start + 30) continue;
/* the request is waiting for a FCGI_STDOUT since 30 seconds */
/* kill the connection */
log_error_write(srv, __FILE__, __LINE__, "s", "fastcgi backend didn't 
responded after 30 seconds");
fcgi_connection_close(srv, hctx);

Still the question remains? Anything like that possible in 1.4.18? 


Gmane