Re: HTTP 1.1 keep-alive support in ext/soap/php_http.c ? (fwd)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




Found it:

http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_http.c?annotate=1.109

Lines 892->895 and 903->905 bring the violence.

Rev 1.28 commented it out:

http://cvs.php.net/viewvc.cgi/php-src/ext/soap/php_http.c?r1=1.27&r2=1.28


The bugs assocaited with it are:
 http://bugs.php.net/bug.php?id=33164
 http://bugs.php.net/bug.php?id=30329

Please advise on a course of action -- I will open another bug report if requested.

http://wiki.apache.org/ws/FrontPage/Axis/AxisCommonsHTTP

Extract from [WWW] RFC 2616 : HTTP/1.1 - Persistent Connection :

"* An HTTP/1.1 server MAY assume that a HTTP/1.1 client intends to maintain a persistent connection unless a Connection header including the connection-token "close" was sent in the request."

Then presumably, unless the server explicitly closes the connection by instructing the client to do so in headers, the client may simply check for the presence of "HTTP/1.1" and continue to cane the connection/socket.

Cane one!

~BAS

On Tue, 14 Aug 2007, Brian A. Seklecki wrote:


Re-send to php-general@ since soap@ is a ghost town.

Per the msg below, still trying to figure out why each client call to any server results in a new TCP socket being built and closed (BAD!)

I finally got around to:
 print "Request :\n" . $soapClient->__getLastRequestHeaders() . "\n";
 print "Request :\n" . $soapClient->__getLastRequest() . "\n";
 print "Response:\n" . $soapClient->__getLastResponseHeaders() . "\n";
 print "Response:\n" . $soapClient->__getLastResponse() . "\n";

As well as checking tcpdump(8) --- my worst fears are confirmed.

The client headers says:
	Connection: Keep-Alive

The server header response says:
	Response:
	HTTP/1.1 200 OK
	Content-Type: application/soap+xml;charset=utf-8
	Transfer-Encoding: chunked
	Date: Tue, 14 Aug 2007 22:35:07 GMT
	Server: Apache-Coyote/1.1

And yet, the PHP client running from the CLI binary executing the same function call to the server opens & closes two sockets to accomplish the work!

~BAS

---------- Forwarded message ----------
Date: Wed, 8 Aug 2007 11:51:50 -0400 (EDT)
From: Brian A. Seklecki <lavalamp@xxxxxxxxxxxxxxxxxxxxxx>
To: soap@xxxxxxxxxxxxx
Subject: [SOAP] HTTP 1.1 keep-alive support in ext/soap/php_http.c ?


All:

Am I correct in reading ext/soap/php_http.c that the SoapClient / SoapServer object will not transmit a "Connection: Close" line into the HTTP header (either via the Client call itself or by modifying Apache's response?)

E.g., by default PHP SOAP client recycles HTTP connections to the server for calls to methods using the same server object / instance?


l8*
	-lava (Brian A. Seklecki - Pittsburgh, PA, USA)
	       http://www.spiritual-machines.org/

--
PHP Soap Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



l8*
	-lava (Brian A. Seklecki - Pittsburgh, PA, USA)
	       http://www.spiritual-machines.org/

    "Guilty? Yeah. But he knows it. I mean, you're guilty.
    You just don't know it. So who's really in jail?"
    ~Maynard James Keenan

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux