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

Administration MySQL Discussion :

Différence de performance MYSQL


Sujet :

Administration MySQL

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2013
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Services de proximité

    Informations forums :
    Inscription : Février 2013
    Messages : 27
    Points : 56
    Points
    56
    Par défaut Différence de performance MYSQL
    Bonjour,

    L'autre jour en ramenant du boulot à la maison, j'ai eu la surprise de voir qu'une page qui s'affichait dans la seconde sur mon poste de développement pro, mettait 30 secondes voir plus à s’exécuter sur mon pc perso.

    Il s'avère que mon code n'est pas optimisé et que je peux largement réduire le nombre de requêtes qui se monte à une vingtaine actuellement. Mais du coup, ce qui me perturbe c'est que je n'arrive pas à comprendre ce qui peux expliquer ces différences de temps de traitement entre les deux pc (les deux bécanes ont moins de trois mois).

    Auriez vous des idées pouvant expliquer ces écarts ?

  2. #2
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 445
    Points : 622
    Points
    622
    Par défaut
    Bonjour,

    Ou est installé MySQL ?

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2013
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Services de proximité

    Informations forums :
    Inscription : Février 2013
    Messages : 27
    Points : 56
    Points
    56
    Par défaut
    J'ai WampServer d'installé sur les deux ordinateurs, à chaque fois sur C:

  4. #4
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Juin 2011
    Messages
    445
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 445
    Points : 622
    Points
    622
    Par défaut
    Citation Envoyé par Munn Li Voir le message
    J'ai WampServer d'installé sur les deux ordinateurs, à chaque fois sur C:
    Tant pis, c'était au cas ou MySQL aurait été installé sur un serveur de ton boulot.

    As-tu vérifié ton antivirus ?

  5. #5
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    Il peut y avoir une différence de temps de réponse à la première exécution sur la nouvelle machine par le fait que les données ne sont pas encore en mémoire. Mais quand la même page avec les mêmes paramètres est appelée plusieurs fois sur la même machine, normalement, les requêtes SQL sont identiques et les résultats figurent déjà en mémoire donc l'accès aux données est beaucoup plus rapide que la première fois.

    Après, il faut aussi comparer les configuration matérielles des deux machines. Si tu as un serveur un peu ancien au boulot mais avec beaucoup de mémoire vive que ton ordi tout neuf perso mais avec peu de mémoire, il est fort possible qu'une requête lourde s'exécutera plus vite sur le serveur que sut ton ordi.

    Quand tu as des problèmes de performances, commence par exécuter les requêtes hors application, directement dans MySQL, afin de détecter si c'est un problème de requête lente ou d'application lente.

    Si c'est une requête lente, vérifie l'indexation des tables et le modèle de données.

    Si toutes les requêtes lancées par l'application sont rapides à exécuter dans MySQL, vérifie l'application :
    - est-il possible notamment de réduire le nombre de requêtes ?
    - des données sont-elles récupérées inutilement par l'application ?
    - des traitements de données faits par l'application pourraient-ils être fait dans le SGBD ?

    Si tu nous donnes plus de détail sur ta BDD et ton code, on pourra t'aider plus efficacement à résoudre le problème.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  6. #6
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2013
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Services de proximité

    Informations forums :
    Inscription : Février 2013
    Messages : 27
    Points : 56
    Points
    56
    Par défaut
    Merci pour vos conseils.

    Après avoir essayez les requêtes directement dans mysql et amélioré l'indexation, ceux-ci j'ai réussi à circonscrire le problème ... qui ne viendrais pas de MYSQL puisque les requêtes s’exécutent parfaitement.

    Il s'avère que c'est la connexion à la base en pdo qui prenait un temps fou, en modifiant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    define ('BD_1_CONNECTION', "mysql:host=localhost;dbname=BD_CARTEBANCAIRE");
    par

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    define ('BD_1_CONNECTION', "mysql:host=127.0.0.1;dbname=BD_CARTEBANCAIRE");
    les temps d’exécution deviennent normales (même si idéalement, il faudra que je revois un ou deux points dans mon application)

    Et comme sur mon serveur de développement au boulot, je fais les requêtes concernés directement sur le serveur de prod (des SELECT) le problème n'apparaissait donc pas.

    Mon problème est donc résolu, mais je ne comprends pas trop pourquoi ce comportement.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 1
    Dernier message: 28/03/2014, 14h15
  2. performance MySql
    Par Sylvain245 dans le forum Requêtes
    Réponses: 2
    Dernier message: 30/01/2006, 17h33
  3. Réponses: 3
    Dernier message: 21/10/2005, 14h56
  4. performances mysql (10 a 100 millions de rows)
    Par killy-kun dans le forum Outils
    Réponses: 1
    Dernier message: 21/07/2005, 15h06
  5. [Conception][performance] mysql table de 10000 enregistrements / hashmap
    Par debdev dans le forum Collection et Stream
    Réponses: 5
    Dernier message: 09/07/2005, 11h29

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