[Web Service] socket timeout : read timed out
Bonjour :)
j'ai un énorme problème de timeout avec un de mes scripts:
le script fait un appel à un script distant en utilisant httpRequest:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
ignore_user_abort(1); // run script in background
set_time_limit(0);
require_once(APPPATH."/libraries/wsse.php");
$strCall = "http://ito.prog.ca/queue/8/message";
$req = new HttpRequest($strCall, HTTP_METH_POST);
$req->setOptions(array('timeout' => 240));
//headers
$wsse = new WSSE('pro_login2', 'pro_pwd2'); //identification name = test2;
$arrHdrAuth = $wsse->get_header();
$req->setHeaders($arrHdrAuth);
//body :
$arrBody = array( 'content' => 'vérification delay','name'=> 'test2');
$req->setPostFields($arrBody);
$httpMessage = $req->send();
echo $httpMessage->getBody(); |
dans le script distant, je traite l'information, et j'appelle d'autres scripts distants (je sais, ça fait beaucoup d'appels :oops: ). Il se peut qu'avant de faire l'appel à ces autres scripts distants, je sois obligé d'attendre un certain temps, selon ce que l'utilisateur a rentré comme date de parution. J'utilise pour cela la fonction sleep().
Le souci, c'est que dans mon premier script, au bout de 30 secondes, j'ai une erreur "SocketTimeout: Read timed out", et je ne sais plus quoi tester pour changer ça...
Je tiens à préciser que dans le cas ou je n'ai pas à attendre, mon script se comporte comme il faut, donc c'est pas parce que le script ne marche pas. De même, si je dois attendre moins de 30 secondes, ça marche encore. C'est quand le script doit attendre plus que 30 secondes que ça foire :evilred:
Est-ce que quelqu'un a déjà eu un problème dans le même genre? Et si oui, quelle piste avait vous suivit pour régler ce <censuré> de problème?
Merci :)