IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Apache Discussion :

Problème multithreading d'Apache pour appel VBScript depuis PHP


Sujet :

Apache

  1. #1
    Membre habitué
    Inscrit en
    Mai 2007
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 185
    Points : 128
    Points
    128
    Par défaut Problème multithreading d'Apache pour appel VBScript depuis PHP
    Bonjour, j'ai un souci avec une action sur ma page web php qui fait appel à un script vbscript qui marche bien sauf que si deux utilisateurs executent la meme action ça me plante le serveur web, je ne sais pas si je dois changer une configuration de mon serveur ou pas ? à ce que je sache est que Apache est multithreadé donc il faut qu'il execute chaque action avec un process..
    Merci d'avance.

  2. #2
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Il fait quoi ton script vbscript ?

    Comment tu l'appelles depuis ton script php ?

    Quand le serveur crash, tu as des logs ?
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  3. #3
    Membre habitué
    Inscrit en
    Mai 2007
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 185
    Points : 128
    Points
    128
    Par défaut
    le script fait tas de choses genre création des repertoires et des fichiers ...
    j'appel mon script en utilisant la fonction exec('cscript c:/scripts/toto.vbs')
    pas de logs quand le serveur se plante.

  4. #4
    Membre expérimenté Avatar de nathieb
    Homme Profil pro
    DevOps
    Inscrit en
    Mai 2004
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DevOps
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 058
    Points : 1 532
    Points
    1 532
    Par défaut une piste
    Bonjour,

    Il faut que tu cherches php exec crash dans google tu as déjà ceci
    http://stackoverflow.com/questions/8...ogram-to-crash

    Sinon regardes la docs PHP exec c'est commun comme erreur

    Olivier
    Architecte destructurant,
    be cool, be free

    Il nous reste Debian bien sûr

  5. #5
    Membre habitué
    Inscrit en
    Mai 2007
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 185
    Points : 128
    Points
    128
    Par défaut
    Le plantage ne se produit pas si un seul utilisateur execute l'action, il se fait à partir du 2eme utilisateur.
    C'est pour celà que je pense que ça peut etre un probleme de multithreading d'apache.

  6. #6
    Membre expérimenté Avatar de nathieb
    Homme Profil pro
    DevOps
    Inscrit en
    Mai 2004
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DevOps
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 058
    Points : 1 532
    Points
    1 532
    Par défaut lire
    Bonjour,

    J'ai compris, mais a tu lus le lien que je viens de te donner ?

    De toute façon un exec qui lance un vbs, c'est moyen ... surtout qu'il doit tourner sous un windows ?

    Olivier
    Architecte destructurant,
    be cool, be free

    Il nous reste Debian bien sûr

  7. #7
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    On est d'accord que ça n'est pas ton vbscript qui foire quand lancé plusieurs fois en même temps???? Vu que tu ne veux pas nous le montrer....

    Quand tu dis qu'Apache plante, soit plus précis.
    - le process crash et se termine ?
    - le process semble tourner en boucle et ne rend plus la main ?
    - tu reçois une page HTML d'erreur ? un code HTTP d'erreur (genre 500) ?
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  8. #8
    Membre habitué
    Inscrit en
    Mai 2007
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 185
    Points : 128
    Points
    128
    Par défaut
    Oui j'ai lu le poste mais je ne trouve pas de relation entre mon problème et celui du poste.
    Quand je parle d'un fichier vbscript, je n'ai pas qu'un seul fichier que je peux executer , lors de l'action A je peux executer le script X et lors de l'action B je peux executer le script Y et ainsi de suite, et pourtant j'obtient toujours le meme souci qui est le plantage d'apache une fois 2 users execute la meme Action.
    le process ne se termine pas , il reste comme si il tourne en boucle et ne rend pas la main.
    au lancement d'un script un peu long - bloquant pour les autres utilisateurs du coup aucun traitement ne peut se faire sur le serveur et on ne peut consulter aucune page web durant ce traitement.

  9. #9
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Je répète ma question....

    C'est pas ton/tes scripts vbscript qui se vautrent quand lancés plusieurs fois en même temps par le même user ?
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  10. #10
    Membre habitué
    Inscrit en
    Mai 2007
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 185
    Points : 128
    Points
    128
    Par défaut
    Je ferai un test par contre il faut que tu sache que meme lors de l'execution du script une seule fois et si un autre utilisateur se connecte en paralellle sans executer de script ça plante le serveur , tu vois ce que je veux dire ?

  11. #11
    Membre éprouvé Avatar de Marc3001
    Homme Profil pro
    Ingénieur systèmes et réseaux
    Inscrit en
    Février 2008
    Messages
    829
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur systèmes et réseaux

    Informations forums :
    Inscription : Février 2008
    Messages : 829
    Points : 1 275
    Points
    1 275
    Par défaut
    Pour moi le problème viendrait plus du script que d'Apache....

    Après sans voir plus de conf ou de contenu de script je ne vais pas pouvoir aller plus loin dans l'analyse.
    Le logiciel, c'est comme le sexe, c'est meilleur quand c'est libre.

    Linus Torvalds

  12. #12
    Membre expérimenté Avatar de nathieb
    Homme Profil pro
    DevOps
    Inscrit en
    Mai 2004
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DevOps
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 058
    Points : 1 532
    Points
    1 532
    Par défaut Bonjour
    Bonjour,
    Sans savoir ce que fait ton script, on ne peut que faire des hypothèses .
    c'est stérile
    Quand on lance du multithreading, il faut gérer la concurrence.
    et sous windows c'est pas gagné.

    Pas de code ?
    pas de bras , pas de chocolat

    olivier
    Architecte destructurant,
    be cool, be free

    Il nous reste Debian bien sûr

  13. #13
    Membre habitué
    Inscrit en
    Mai 2007
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 185
    Points : 128
    Points
    128
    Par défaut
    en fait j'ai fait un test, c'est quand on lance un script un peu long de 15s par exemple ça bloque tous les utilisateurs du site.

  14. #14
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    PHP est intégré à Apache comment ? mod_php ? CGI ?

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

  15. #15
    Membre expérimenté Avatar de nathieb
    Homme Profil pro
    DevOps
    Inscrit en
    Mai 2004
    Messages
    1 058
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : DevOps
    Secteur : Service public

    Informations forums :
    Inscription : Mai 2004
    Messages : 1 058
    Points : 1 532
    Points
    1 532
    Par défaut time out
    Bonjour,

    Si je me souviens bien le time out php est de 30 secondes. Si moins alors alonge ton time out mais je n'y crois pas, cela ne fait pas tomber un serveur.
    En règle général, c'est un pb de ressource ou de dead lock ?? bizarre toujours pas de source ..


    Olivier
    Architecte destructurant,
    be cool, be free

    Il nous reste Debian bien sûr

  16. #16
    Membre habitué
    Inscrit en
    Mai 2007
    Messages
    185
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 185
    Points : 128
    Points
    128
    Par défaut
    PHP est integré en mod_php.
    Je ne crois pas que j'ai un probleme de ressources, ma RAM est de 25 Go.
    Le time out est laissé par defaut.
    en principe Apache doit gerer les connexion par des processus , donc ça ne doit pas bloquer un autre utilisateur !! bizzare

  17. #17
    Rédacteur
    Avatar de _Mac_
    Profil pro
    Inscrit en
    Août 2005
    Messages
    9 601
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2005
    Messages : 9 601
    Points : 12 977
    Points
    12 977
    Par défaut
    Faut peut-être changer de module MPM mais je ne sais pas si sous Windows il y a autre chose que mpm_winnt.

    Sinon, essaie de configurer PHP en tant que CGI.

    Du détail, du détail, du détail !!!
    Revenons à la source : lisons la documentation et les fichiers de trace, la réponse à notre problème s'y trouve sans doute

Discussions similaires

  1. Appeler Java depuis PHP -> Galère
    Par romut dans le forum Langages serveur
    Réponses: 1
    Dernier message: 03/08/2011, 17h13
  2. Réponses: 8
    Dernier message: 04/04/2009, 12h14
  3. Réponses: 8
    Dernier message: 08/06/2007, 21h39
  4. Lancer un vbscript depuis PHP
    Par el_butcho dans le forum Langage
    Réponses: 1
    Dernier message: 20/06/2006, 11h22
  5. [PHP-JS] Faire un appel JavaScript depuis PHP
    Par davinout dans le forum Langage
    Réponses: 4
    Dernier message: 29/05/2006, 20h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo