mysql_close() nécessaire pour améliorer les performances ?


Ohax
WRInaute accro
WRInaute accro
 
Messages: 6406
Inscription: 5 Juil 2004

mysql_close() nécessaire pour améliorer les performances ?

Message le Dim Nov 12, 2006 0:52

Bonsoir,

J'ai pu lire qu'il était nécessaire de fermer les connections pour éviter de saturer le serveur.

Donc mettre mysql_close(); avant les premiers echo si possible...

C'est vraiment nécessaire / efficace ?

Merci


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2216
Inscription: 10 Avr 2005

Re: mysql_close();

Message le Dim Nov 12, 2006 0:58

Salut,

Tout dépend du choix que tu as fait au niveau de la gestion de tes connexions.

http://fr.php.net/manual/fr/features.pe ... ctions.php


Ohax
WRInaute accro
WRInaute accro
 
Messages: 6406
Inscription: 5 Juil 2004

Message le Dim Nov 12, 2006 1:02

Comment je sais si j'utilise des connections persistantes ou non ?

zim''
WRInaute discret
WRInaute discret
 
Messages: 152
Inscription: 24 Oct 2006

Message le Dim Nov 12, 2006 1:03

Je doute que tu ai des connexion persistantes dans tes scripts...

Donc ma réponse:

non ce n'est pas necessaire, la connexion se ferme toute seul a la fin du script (ou au timeout, si jamais...)

la perte de perf résultant de l'omission de la cloture a la base est pour moi insignifiante... (hormis scripts foireux)

encore une fois, je ne parle pas pour les connexions persistantes...


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2216
Inscription: 10 Avr 2005

Message le Dim Nov 12, 2006 1:04

Prends le temps de lire...

zim''
WRInaute discret
WRInaute discret
 
Messages: 152
Inscription: 24 Oct 2006

Message le Dim Nov 12, 2006 1:04

Ohax a écrit:Comment je sais si j'utilise des connections persistantes ou non ?


mysql_pconnect ouvre une connexion persistante, a l'inverse de mysql_connect
Dernière édition par zim'' le Dim Nov 12, 2006 1:13, édité 1 fois.


Ohax
WRInaute accro
WRInaute accro
 
Messages: 6406
Inscription: 5 Juil 2004

Message le Dim Nov 12, 2006 1:06

Merci bien.


J'utilise bien mysql_connect


Donc les break ne sont pas nécessaires merci bien :-).

Cependant si j'ai bien comprit l'article mes pages seraient plus rapide avec un mysqlp_connect sans oublier de fermer la connection ?

zim''
WRInaute discret
WRInaute discret
 
Messages: 152
Inscription: 24 Oct 2006

Message le Dim Nov 12, 2006 1:10

dépend de ton application...

mais la plupart du temps, ce n'est pas adapté...


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2216
Inscription: 10 Avr 2005

Message le Dim Nov 12, 2006 1:11

mysql_pconnect()

Non justement l'intérêt c'est de les laisser ouvertes.

zim''
WRInaute discret
WRInaute discret
 
Messages: 152
Inscription: 24 Oct 2006

Message le Dim Nov 12, 2006 1:15

dorian53 a écrit:mysql_pconnect()

Non justement l'intérêt c'est de les laisser ouvertes.


On est d'accord... le mieux est qu'il lise la doc... pour moi ça n'a pas d'utilité dans ma config, dans mes scripts etc...


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2216
Inscription: 10 Avr 2005

Message le Dim Nov 12, 2006 1:18

Oui comme dit plus haut

Tout dépend du choix que tu as fait au niveau de la gestion de tes connexions.


Beaucoup de connexions ou pas, d'utilisateurs ou pas, quelle type de base, système de cache, etc... ?


TOMHTML
WRInaute accro
WRInaute accro
 
Messages: 3250
Inscription: 25 Aoû 2004

Message le Dim Nov 12, 2006 1:52

un jour je me suis rendu compte que je n'avais jamais mis de mysql_close() sur mes pages. Mes pages faisait "texte-requête sql plutot lourde-un petit peu de texte"
et bien en mettant un close() entre le SQL et le peu de texte qu'il restait, mon temps de chargement des pages a été presque divisé par deux.
Plus utile que je ne l'avais imaginé, maintenant je m'en sers systématiquement ;)


Ohax
WRInaute accro
WRInaute accro
 
Messages: 6406
Inscription: 5 Juil 2004

Message le Dim Nov 12, 2006 1:58

J'ai également fait le test de temps de génération mais mes pages ne sont pas assez lourdes et trop simples pour que je puisse en tirer de réelles conclusions :-(.


finstreet
WRInaute accro
WRInaute accro
 
Messages: 16999
Inscription: 10 Juil 2005

Message le Dim Nov 12, 2006 13:14

Fais un test simple... calcule le temps de chargement de ta page actuellement... fais plusieurs fois le test

Ensuite tu reprends la meme page... et tu la modifies en profondeur pour que la durée de l'ouverture de ta base soit la plus courte possible ...

et oh miracle, le temps de chargement peut fondre dans certains cas

J'ai testé et effectivement sur certaines pages, ca peut etre pas mal...


Dmx
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 256
Inscription: 7 Avr 2004

Message le Dim Nov 12, 2006 13:45

heu avec un site a fort trafic ... le serveur ramait, et j'ai rajouter tous ses mysql_close() et c'était un peu mieux quand même ! Mysqld souffre bien moins !

Si vous utilisez une classe d'abstraction il suffit de lettre le mysql_close dans le destructeur, comme ça, c'est sur et certain que la connexion sera fermé à a la destruction de l'objet !

mysql_close() nécessaire pour améliorer les performances ?

Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité