A HTTP server needs to ignore SIGPIPE. Otherwise the server might die just because a client got closed before it finished reading the response from the server (though I thought that TCP/IP sockets didn't signal SIGPIPE -- but it probably varies by operating system).
If a client goes away, it could take a while for the server's attempt to send data to it to eventually fail. It depends how the client goes away. If the client process dies, then the operating system will usually ensure that the send attempts quickly fail. If the client hangs, the computer or network fails, or many other failure cases, then the server is likely to be tied up for about 2 minutes trying to decide whether to give up resending data.
- tye (but my friends call me "Tye")In reply to (tye)Re: HTTP::Daemon and broken pipes
by tye
in thread HTTP::Daemon and broken pipes
by dash2
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |