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

Virtualisation Discussion :

[Multiplication de process OU Exécution parallèle]


Sujet :

Virtualisation

  1. #1
    Membre habitué
    Inscrit en
    Mars 2007
    Messages
    185
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Mars 2007
    Messages : 185
    Points : 134
    Points
    134
    Par défaut [Multiplication de process OU Exécution parallèle]
    Bonjour,

    Depuis quelques temps j'avais des doutes, mais maintenant j'en suis certain, j'ai un problème *spécial* mais je n'arrive pas à en trouver l'origine. Je commence par ce forum car mon premier suspect est mon architecture virtualisée .

    Le phénomène:
    1. Soit un tâche cron exécutée 2 fois par jour sur un serveur DEBIAN sur une VM. A chaque exécution elle enregistre la tâche exécutée en base de données MySQL (sur un autre serveur), sur un serveur DEBIAN sur une VM.
    2. Le cron avant de se lancer vérifie en BDD que la tâche qu'il doit exécuter n'a pas été enregistré en BDD.
    3. Les deux serveurs sont sur deux ESX différents, et tapent dans deux stockages différents en SAN Iscsi. Un en RAID 10 (BDD), l'autre en RAID 5 (Application). Les deux ESX sont managés ensemble en haut disponibilité par VSphere.

    4. Il arrive (log à l'appui) que la tâche soit "exécutée" deux fois dans le même intervalle de temps !!! Pour que ce soit possible il faut que l'une se lance, immédiatement après l'autre, de manière à ce que la première n'ait pas eu le temps d'enregistrer son travail en BDD ... ce qui aurait pour conséquence de bloquer l'autre qui ne ferait rien.
    Pour résumé, le fait d'avoir le log de deux éxécutions successives signifie que la tâche se réalise DEUX FOIS CONSECUTIVEMENT DANS UN INTERVALLE DE TEMPS TRES COURT. Intervalle de temps de toutes façon supérieur à l'intervalle programmé dans la crontab.

    5. Ce que j'ai constaté de manière très visible et très formelle pour cette tâche, je le vois dans d'autres circonstances par le biais d'erreurs d'insertion en BDD et de violation de clefs primaires... alors que dans le programme il y a un contrôle de la clef avant l'insert !! Comme si le programme s'était exécuté deux fois de manière très proche dans le temps...

    J'ai plusieurs pistes à creuser:
    1. Un truc bizarre dans la gestion du processeur par les VM, qui entrainerait une multiplication de certains process.
    2. Un truc bizarre au niveau de la gestion des accès Iscsi gérés par SAN Melody avec une erreur de gestion au niveau du tampon en RAM.
    3. Un truc bizarre au niveau de la BDD qui gérerait mal une montée en charge... ou une erreur de configuration exotique qui entrainerait quelques fois une double exécution des requêtes.
    4. Un truc bizarre au niveau de la gestion des process sur le serveur d'application qui entrainerait quelques fois une double exécution des process (Apache 2, PHP 5).

    J'ai bien entendu regarder mon code dans tous les sens avant de poster, et je suis catégorique, dans le cas que je cite en exemple il est RIGOUREUSEMENT IMPOSSIBLE que l'exécution se passe deux fois de suite car avant l'exécution il y a un contrôle que la tâche n'a pas déjà été réalisé. SAUF SI IL Y A UNE DOUBLE EXECUTION DANS UN INTERVALLE DE TEMPS TRES COURT....

    Merci de vos commentaires, aides, et conseils... j'avoue que j'ai l'impression d'avoir rencontré un martien, je ne maitrise plus rien, et je panique pas mal ... parceque ce genre de problèmes peut avoir des conséquences très facheuses sur un serveur en production... ET JE N'AI AUCUNE IDEE DE SON ORIGINE ET DE LA MANIERE DE LE RESOUDRE .

    Théolude.

  2. #2
    Membre expert
    Avatar de vpourchet
    Homme Profil pro
    Integrateur Systemes & Virtualisation
    Inscrit en
    Avril 2008
    Messages
    1 159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Integrateur Systemes & Virtualisation
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2008
    Messages : 1 159
    Points : 3 645
    Points
    3 645
    Par défaut
    ou un probleme de gestion du temps ? heure synchronisée avec l'horloge interne de l'hote ou via NTP ?
    Mon Site Web consacré à la Virtualisation

    VMware vExpert 2013/2012, VMware Certified Professionnal (VCP510), VMware Technical Sales Professional, VMware Sales Professionnal
    Veeam Technical Sales Professional, Veeam Sales Professional
    Citrix Certified Sales Professional
    DataCore Sales Certified Professional

Discussions similaires

  1. [Exécution parallèle Labview]
    Par za3im_ensa dans le forum LabVIEW
    Réponses: 0
    Dernier message: 16/05/2011, 16h12
  2. RMID multiples activation process problème
    Par EvAyla dans le forum Général Java
    Réponses: 0
    Dernier message: 07/09/2010, 10h53
  3. [EJB MDB] Multi topic listener - Exécution parallèle
    Par suzchr dans le forum Java EE
    Réponses: 0
    Dernier message: 13/01/2010, 10h04
  4. Est-ce possible : exécution parallèle ?
    Par darkwall_37 dans le forum Multithreading
    Réponses: 5
    Dernier message: 12/05/2009, 08h12
  5. Runtime/Process : pb exécution d'une commande
    Par Didier 69 dans le forum API standards et tierces
    Réponses: 4
    Dernier message: 05/01/2007, 08h50

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