Version complète: sur le forum Webmaster Hub : defunct (processus zombie)
Webmaster Hub > Création et exploitation de Sites Internet > Les fondations d'un site > Hébergement de Sites
John_attend
Bonjour tout le monde,

Quand j'utilise la commande top sur putty, il n'est pas rare de voir ce genre de ligne :

CODE
22970 mysite  17   0     0    0    0 Z    2  0.0   0:00.07 php-v5 <defunct>
15488 mysite  17   0 28420 8004 6416 R    2  0.2   0:00.06 php-v5
19339 mysite  17   0     0    0    0 Z    1  0.0   0:00.03 php <defunct>


J'aimerais savoir ce que signifie le "defunct" qui survient visiblement avec certains scripts PHP ou PHP5. Qu'est ce que ça signifie concrètement ? Doit on s'inquiéter quand on voit ce genre de chose ou est ce que cela signifie forcément qu'il y a un problème ? En cherchant sur Google je ne trouve pas réellement la réponse à cette question.

Merci d'avance smile.gif
Dan
Ce sont des processus qui sont terminés, mais dont le parent n'a pas été averti de cet état (quelle qu'en soit la raison)
Comme ils sont déjà terminés, on ne peut donc pas les "killer"

Comme tout processus sous Linux (ou Unix) doit connaître l'état des processus fils qu'il a lancé, Linux en garde cette trace.

Pas de raison de t'inquiéter, parce que ces processus n'apparaîtront plus une fois que le parent aura lui-même été terminé.
(sauf si tu en as une liste "longue comme le bras") wink.gif
Gecko64
Moi les <defunct> ca me rappelle toujours une histoire avec Apache2 qui n'avait plus assez de place en mémoire vive pour charger assez de Thread de façon à traiter toutes les demandes des surfeurs happy.gif (on avait essuyé un tir de 2000 visites en 1heure...)
Une petite modif de la config a du se faire par la suite pour régler ce souci tongue.gif
Sinon oui comme le dis Dan si tu en as un de temps en temps, il n'y a pas vraiment de raison de s'inquiéter wink.gif
John_attend
Merci de vos réponses smile.gif

La liste n'est pas longue comme le bras, je n'ai donc pas à m'inquiéter.

CITATION(Dan @ vendredi 11 janvier 2008 à 19:04) *
Ce sont des processus qui sont terminés, mais dont le parent n'a pas été averti de cet état (quelle qu'en soit la raison)
Comme ils sont déjà terminés, on ne peut donc pas les "killer"


Mais alors concrètement, qu'est ce qui provoque cela au niveau des scripts PHP ? Est ce que je peux changer quelque chose dans mes scripts pour arrêter de voir ces zombies ? Cela va peut être vous paraître bête, mais cela n'aurait il pas un rapport avec la fonction PHP exit() qui arrête l'éxecution ?
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.