Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

performances bizarres mysql php

3 réponses
Avatar
J-F Portala
Bonjour,
j'ai poste ce mesage dans le groupe php car je ne sais pas si cela vient de
mysql ou de php.

je viens de faire nombre de tests de performances et je n'arrive pas à
comprendre ce qui se passe.

Je travaille en PHP et mysql avec apache sous windows.

J'ai une requete qui me prenait du temps, et j'ai voulu l'optimiser, j'ai
gagné un peu de temps, et je suis maintenant à 16 secondes (la fête!!!)
Le probleme, c'est que l'orsque je copie la requete sous phpmyadmin et que
je la lance, elle prend 0,1s, d'où mon grand désarroi.

J'ai dépouillé tout mon code pour n'arriver qu'à
echo time() ;
$result = mysql_query($query,$dbh) ;
echo time() ;
temps = 16s

Si je réactualise la page, le resultat est immédiat, mais si je relance le
navigateur, je retombe sur mes 16s.

Alors que dans phpmyadmin, j'ai toujours 0,1s., meme si je redemarre apache
et mysql

Je ne sais plus vers où chercher.
Il y a peut être quelque chose d'évident, mais là je sèche complètement.

J'ai même essayé le test avec la lib pear mais j'ai la même punition de 16s.

Merci de votre aide

Jeff

3 réponses

Avatar
Etienne Valquez
J-F Portala a écrit :
Bonjour,
j'ai poste ce mesage dans le groupe php car je ne sais pas si cela vient de
mysql ou de php.

je viens de faire nombre de tests de performances et je n'arrive pas à
comprendre ce qui se passe.

Je travaille en PHP et mysql avec apache sous windows.

J'ai une requete qui me prenait du temps, et j'ai voulu l'optimiser, j'ai
gagné un peu de temps, et je suis maintenant à 16 secondes (la fête!!!)
Le probleme, c'est que l'orsque je copie la requete sous phpmyadmin et que
je la lance, elle prend 0,1s, d'où mon grand désarroi.

J'ai dépouillé tout mon code pour n'arriver qu'à
echo time() ;
$result = mysql_query($query,$dbh) ;
echo time() ;
temps = 16s

Si je réactualise la page, le resultat est immédiat, mais si je relance le
navigateur, je retombe sur mes 16s.

Alors que dans phpmyadmin, j'ai toujours 0,1s., meme si je redemarre apache
et mysql

Je ne sais plus vers où chercher.
Il y a peut être quelque chose d'évident, mais là je sèche complètement.



pas assez de mémoire et du coup, tes données ne sont plus en cache disque ?
Avatar
Jerome PAULIN
Bonjour,

Peut etre un antivirus ou un firewall qui analyse complètement (=trop)
les flux de données ?

gg
Avatar
J-F Portala
Merci de votre aide

Je viens de finir par trouver l'origine du probleme.

Dans ma requete, j'utilise 2 tables croisiées et je viens de m'apercevoir
que dans la seconde table, il manque
des valeurs.
J'étais trop persuadé du contraire et j'utilisais une requete croisée sans
jointure.
En utilisant left join, je retombe sur des performances plus que correctes.

En revanche, je ne m'explique pas pourquoi phpmyadmin n'avait pas ce
probleme de performances avec la même requete.

Jeff

Bonnes fêtes