Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:17870 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 81054 invoked by uid 1010); 12 Aug 2005 15:09:49 -0000 Delivered-To: ezmlm-scan-internals@lists.php.net Delivered-To: ezmlm-internals@lists.php.net Received: (qmail 81039 invoked from network); 12 Aug 2005 15:09:49 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 12 Aug 2005 15:09:49 -0000 X-Host-Fingerprint: 204.11.219.140 lt1.firehawksystems.com Linux 2.4/2.6 Received: from ([204.11.219.140:48460] helo=lt1.firehawksystems.com) by pb1.pair.com (ecelerity 2.0 beta r(6323M)) with SMTP id 19/2F-33075-CBBBCF24 for ; Fri, 12 Aug 2005 11:09:48 -0400 Received: from [10.0.0.2] ([69.219.239.6]) (authenticated bits=0) by lt1.firehawksystems.com (8.13.3/8.13.3) with ESMTP id j7CF9cXF000886 (version=TLSv1/SSLv3 cipher=RC4-SHA bits=128 verify=NO); Fri, 12 Aug 2005 08:09:40 -0700 In-Reply-To: <57792e85050811174867b7a6c3@mail.gmail.com> References: <57792e85050808205143e96a8f@mail.gmail.com> <42F907A0.8070900@web.de> <57792e85050809142416ee5d6c@mail.gmail.com> <42F9217F.6010604@lerdorf.com> <57792e8505080917402f144072@mail.gmail.com> <42F962CF.4000503@lerdorf.com> <57792e85050811174867b7a6c3@mail.gmail.com> Mime-Version: 1.0 (Apple Message framework v622) Content-Type: text/plain; charset=US-ASCII; format=flowed Message-ID: Content-Transfer-Encoding: 7bit Cc: Andreas Korthaus , Rasmus Lerdorf , internals@lists.php.net Date: Fri, 12 Aug 2005 10:09:33 -0500 To: steve roussey X-Mailer: Apple Mail (2.622) X-Virus-Scanned: ClamAV version 0.86.1, clamav-milter version 0.86 on lt1 X-Virus-Status: Clean Subject: Re: [PHP-DEV] Re: Moving to PHP5.1 and Apache 2.2 next year, need help From: list@firehawksystems.com ("Brian J. France") On Aug 11, 2005, at 7:48 PM, steve roussey wrote: > o Apache 2+ uses SO_LINGER by default if it defined for that system. Really? We just did a around of discussion/debugging on this at work and I found that it uses ap_lingering_close which is like the lingering_close function in 1.3. > Apache 1 will only use it if you define USE_SO_LINGER (I suppose in > configure). Right and the default is to use lingering_close, unless NO_LINGCLOSE is defined on some os-es like SUNOS4, IRIX, NEXT, AUX3, UW. > Apache2 has all sorts of stuff in the comments of the code > and in the manual which is just wrong. Its all from Apache1 and does > not reflect on Apache2's implementation. I wish they just erased it > instead. I just wish people would fix the TCP stack, it is broken damn it. > o As far as I can tell, current Linux will block until all data is > sent, then return (doing the actual closing part in the background) > with SO_LINGER. This is what we found for Linux and FreeBSD, kernel guys say it is not a bug in the TCP stack sense everybody blocks. > o Lingerd caused my apache setup to crash. It was worth a try if it > didn't take much effort, but not worth fixing. Are people really finding that they need lingerd? For 1.3 we have keepalive off and build with NO_LINGCLOSE, which means be blast the data to the kernel buffer (set large) close the socket and move on. We have been doing this for at least 3+ years and I have never heard any complaints and we server a lot of requests/client (I am tied with Rasmus). Brian