[SQL + PHP] Rapidité => comment faire

Rapidité => comment faire [SQL + PHP] - Programmation

Marsh Posté le 29-01-2002 à 10:17:17    

Salut @ tous
 
j'ai programmé un petit forum sans prétentions (par rapport à HFR, lol) mais il se trouve qu'il est très très lent !!!
 
il est géré par du PHP3 et une base MYSQL, le tout hoster chez Free...
 
si vous pouviez me dire pkoi c'est lent comme ça....
 
voici l'adresse du forum

 

[edtdd]--Message édité par xkamui--[/edtdd]

Reply

Marsh Posté le 29-01-2002 à 10:17:17   

Reply

Marsh Posté le 29-01-2002 à 12:12:24    

est ce que tu connais la fonction EXPLAIN ??
 
si c'est non alors fonce sur la DOC : explain est indispensable pour optimiser tes requetes -> tu arettes ton optimisation des que toutes tes requetes sont en CONST .
 
const = parfait -> la tu es tranquille, meme avec 300000 messages dans la base ca tournera au poil.

Reply

Marsh Posté le 29-01-2002 à 15:45:58    

une ch'tite adresse pour la doc...  :sweat:

Reply

Marsh Posté le 29-01-2002 à 15:48:53    

xkamui a écrit a écrit :

une ch'tite adresse pour la doc...  :sweat:  




 
http://www.mysql.com

Reply

Marsh Posté le 29-01-2002 à 16:21:06    

et hop, directement dessus : http://dev.nexen.net/docs/mysql/an [...] XPLAIN.php
 
je te conseille de passer par nexen pour les DOCs PHP/MySQL -> elles sont traduites en Francais  :D avec en prime des annotations.

Reply

Marsh Posté le 29-01-2002 à 16:37:46    

tiens, voici un exemple de ce que permet explain .
 
j'ai une requete pour le forum ->
 
je part des categories du forum pour aller dans les forums, de la je vais dans les sujets et je choisit le sujet qui m'interesse et en prime je recupere les infos de la personne avec log_id .

WHERE cat_id='1' AND cat_id=for_idcat AND for_id=suj_idfor AND suj_id='2' AND suj_idlog=log_id

 
j'ai entouré de rouge ce que tu dois retrouver dans tes requetes :
http://complet1.free.fr/divers/ex_explain.png
 
j'ai pas eu besoin de straight-join et C° grace simplement aux  indexes sur les bonnes colonnes

 

[edtdd]--Message édité par potiron--[/edtdd]

Reply

Marsh Posté le 29-01-2002 à 17:25:26    

potiron a écrit a écrit :

est ce que tu connais la fonction EXPLAIN ??
 
si c'est non alors fonce sur la DOC : explain est indispensable pour optimiser tes requetes -> tu arettes ton optimisation des que toutes tes requetes sont en CONST .
 
const = parfait -> la tu es tranquille, meme avec 300000 messages dans la base ca tournera au poil.  




 
Tu ne peux pas toujours avoir type = CONST ???

Reply

Marsh Posté le 29-01-2002 à 17:47:25    

non, ca depend du "type" de requete, ex :
 
si tu fais un : EXPLAIN SELECT * FROM aff_cat -> la c'est pas possible vu que tu lui demande de sortir TOUTES les lignes sans aucune clause where.

Reply

Marsh Posté le 29-01-2002 à 20:32:57    

Le pb vient aussi de free, php est tres lent chez eux...

Reply

Marsh Posté le 29-01-2002 à 20:44:11    

potiron>> c'est ou que tu trouves une telle interface pour les commandes sql?

Reply

Marsh Posté le 29-01-2002 à 20:44:11   

Reply

Marsh Posté le 29-01-2002 à 21:04:32    

c'est lui qui l'as fait

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed