Client disconnects

Maxim Dounin mdounin at
Mon Jan 23 13:16:21 UTC 2012


On Mon, Jan 23, 2012 at 01:20:42AM -0500, J.Q. S. wrote:

> Apologies for the resend, I last sent this during the holidays which
> was bad timing on my part.
> I've been working on a module to submit web requests to a backend
> server over UDP, and its been a good exercise in working with nginx
> internals.
> I could use some advice on dealing with client disconnects -  using
> the proxy/upstream modules as models I see
> ngx_http_upstream_rd_check_broken_connection and
> ngx_http_upstream_wr_check_broken_connection being set as event
> handlers for the client connection, but I don't see the handlers put
> back or the original handlers being called. Wouldn't this interfere
> with keep-alive behavior on the client connection? I don't understand
> how this works completely.

The upstream module change request handlers, not connection ones.  
And appropriate request handlers will be set by 
ngx_http_set_write_handler() during request finalization.

For client keepalive connections needed (connection) handlers will 
be set by ngx_http_set_keepalive().

See ngx_http_request.c for more details.

Maxim Dounin

More information about the nginx-devel mailing list