J'ai un script PHP qui doit invoquer un script shell mais qui ne se soucie pas du tout de la sortie. Le script shell fait un certain nombre d'appels SOAP et est lent à terminer, donc je ne veux pas ralentir la requête PHP pendant qu'il attend une réponse. En fait, la requête PHP devrait pouvoir se terminer sans terminer le processus shell.Exécution de shell asynchrone en PHP
J'ai examiné les diverses fonctions exec()
, shell_exec()
, pcntl_fork()
, etc., mais aucune d'elles ne semble offrir exactement ce que je veux. (Ou, s'ils le font, ce n'est pas clair pour moi comment.) Des suggestions?
Quelle que soit la solution choisie, vous devriez aussi utiliser 'nice' et' ionice' pour éviter que le script shell ne submerge votre système (par exemple '/ usr/bin/ionice -c3/usr/bin/nice -n19 ') – rinogo
Copie possible de [php exécuter un processus d'arrière-plan] (https://stackoverflow.com/questions/45953/php-execute-a-background-process) –