Thanks Gaetano. I tried setting the timeout of the send method or 'default_socket_timeout' on the client, both to no effect. This is on Mac OS X with PHPXMLRPC 1.2.1, PHP 4.4.1 and plain HTTP. My server is running 1.2.1 also but with PHP 5.1.1 on NetBSD.

Anyway, it's a moot point now as I doubled the performance of my script so that it runs in under a minute. That was by using APD:


It's highly recommended.



On 6 May 2006, at 9:58pm, Giunta Gaetano wrote:

Setting the script timeout to a value bigger than your expected communication is of cousre a good idea. Using zero (or -1, I cannot remember) means that the script is allowed to run taking all the time it needs, which might be a sensible option.

The 'max input time' should have no influence at all on behaviour of the script, as far as I can tell.

The only other parameter you will need to set is the timeout in the send method of the client. The connection timing out after 60 secs is in fact a clear indicator of that: the default socket timeout of php being 60 seconds.

There might be a bug in the library, but I tested it quite extensively with servers that just output a character every 60 seconds, and it seemed to work well.

To investigate further I should have more info about your platform: which version of phpxmlrpc/php/os are you using? Are you using http11 or https as protocol?

Note taht there is a known bug on windows platform with old releases of php that did not allow to set a socket timeout above 60 secs. In that case the only option would be to upgarde your php install.


-----Messaggio originale-----
Da:     [EMAIL PROTECTED] per conto di Jeff Tupholme
Inviato:        sab 5/6/2006 0:21
A: <phpxmlrpc@lists.usefulinc.com> <phpxmlrpc@lists.usefulinc.com><phpxmlrpc@lists.usefulinc.com>
Oggetto:        [phpxmlrpc] Request timeouts

I'm having problems with a long-running complex query to my XML-RPC
server timing out. Initially I was getting the PHP error 'Maximum
execution time of 30 seconds exceeded', so I changed
'max_execution_time' in php.ini to 60 and that went away.

However, it was replaced with a message of 'No response received from
server', which appeared after exactly 60 seconds. I tried increasing
'max_execution_time' again but to no avail, and I've also tried
changing 'default_socket_timeout' and even 'max_input_time' up to 90
but still get the same result after 60 seconds. Therefore I think it's
being constrained by something else.

I'm not specifying a timeout in my client send method, but I also tried
that at 90 with no change. I'm running the client from the command
line. If I change the values I pass to the method to make the
underlying query simpler and quicker it works.

Any ideas what I really need to change to allow my long query to
complete, please?



phpxmlrpc mailing list

Reply via email to