Re: Bug #10673: CURL/PHP causes lengthy Apache Keepalive

From: Date: Fri, 04 May 2001 05:28:00 +0000
Subject: Re: Bug #10673: CURL/PHP causes lengthy Apache Keepalive
References: 1  Groups: php.dev 
Request: Send a blank email to php-dev+get-53894@lists.php.net to get a copy of this message
Working with user off the mailing list (I don't want to flood it :)... Please keep this bug open for now :))) On 4 May 2001 dave@backbeatmedia.com wrote: > From: dave@backbeatmedia.com > Operating system: Linux > PHP version: 4.0.4pl1 > PHP Bug Type: cURL related > Bug description: CURL/PHP causes lengthy Apache Keepalive > > Greetings. I have Apache/1.3.14 (Unix) running with > PHP/4.0.4pl1 installed as a module and CURL 7.7.1 added to > that. Our web sites need to fetch a request from a remote > ad server in real-time as each page is generated. If $adr > is the request, I used to use: > > $success = @readfile($adr); > > But then I found CURL and saw that is (a) was more robust > and (b) seems to be more efficient than readfile. So I now > use CURL in he following way: > > $aje_ch = @curl_init($adr); > @curl_setopt ($aje_ch, CURLOPT_TIMEOUT, 1); > @curl_setopt ($aje_ch, CURLOPT_MUTE, 1); > @curl_exec ($aje_ch); > @curl_close ($aje_ch); > > This works great, except that if I have "Keepalive on" in > my Apache configuration file, the httpd server sits in > keepalive state for FAR longer when using CURL than it does > when using readfile. In the course of 2 or 3 hours, my > server would normally be at about 150 httpd processes > running at any given point in time. But when using CURL, it > jumps to 650 httpd processes, with the lions share (99%) of > those sitting in the keepalive state for very long. It > seems like the CURL requests are causing Apache to set its > Keepalive timeout to something much higher than it should > be. Setting "keepalive off" in Apache's conf file works > around this problem, but decreases server efficiency. I'd > love to solve this problem. > > Please help! :-) > > For the record, this was posted to the cURL bug tracker > over on SourceForge > (http://sourceforge.net/tracker/?func=detail&atid=100976&ai > d=418860&group_id=976), and we went through quite a few > gyrations with no success. Specifically, we tried > disabling KeepAlive on the REMOTE server to see if that had > any affect, and it did not. It seems not to matter what we > request from, rather that any requests using > PHP/cURL/Apache result in the LOCAL Apache bloating out of > control with KeepAlive requests. Reverting back to > readfile() based requests solves this problem but, well, > cURL is better. ;-) > > All help would be appreciated, and I am available and > willing to test anything on our servers. > > Thanks! > > -Dave > > >

« previous php.dev (#53894) next »