Mysql_close

Petit nouveau ! | 7 Messages

24 janv. 2006, 15:11

Bonjour,

Dernièrement un de mes sites a connu une hausse de son trafic et s'est retrouvé inaccessible. Le problème semblait venir d'un trop gros nombre de connexions à la base en même temps. L'hébergeur m'a conseillé à placer des mysql_close.
Je voudrais savoir où les placer (à la fin de chacun de mes scripts ou en bas de page) et si leur impact est si déterminant que cela.
Merci d'avance pour vos éclairages.

Mammouth du PHP | 1311 Messages

24 janv. 2006, 15:31

salut
theroquement mysql close est appelé automatiquement a la fin du script

pour ton probleme je pense qu'une optimisation de tes base et de tes requetes seraient plus indiqués

Petit nouveau ! | 7 Messages

24 janv. 2006, 15:33

Qu'entends-tu par "optimisation de la base et des requêtes" ?
Limiter le nombre de requêtes ?
Créer des index dans les tables pour limiter le temps d'exécution ?
etc ...

Avatar du membre
Administrateur PHPfrance
Administrateur PHPfrance | 13231 Messages

24 janv. 2006, 15:34

ça dépend, si la charge de ton site se compte en millier par secondes, il est possible que le fait de fermer tes connexions dès que tu n'en as plus besoin peut permettre de soulager le serveur de données

Mais comme le dit jeff, mysql_close est automatiquement fait sur toutes tes connextions avec mysql_connect en fin de script donc le fait de mettre des mysql_close à la fin de chaque script ne changera pas grand chose
Connaître son ignorance est la meilleure part de la connaissance
Pour un code lisible : n'hésitez pas à sauter des lignes et indenter

twitter - site perso - Github - Zend Certified Engineer

Mammouth du PHP | 1311 Messages

24 janv. 2006, 15:43

Qu'entends-tu par "optimisation de la base et des requêtes" ?
Limiter le nombre de requêtes ?
Créer des index dans les tables pour limiter le temps d'exécution ?
si tu pose la qusetion comme ca c'est que ta due deja y reflechir :mrgreen:

sinon il y mysql_free_result qui peut t'aider
et tu peut aussi gerer le cahche de tes requetes