mysql_pconnect()

mysql_pconnect() - PHP - Programmation

Marsh Posté le 04-03-2003 à 15:09:23    

Hum.. je viens de feuilleter la ptite doc nexen.. et sur quoi je tombe? bah jvous le donne en mille, sur la fonction mysql_pconnect()..  [:zebra33]  
http://dev.nexen.net/docs/php/anno [...] onnect.php
 
J'aimerai vraiment savoir si ça optimise a fond les requettes sql..
En fait je fai des spectacles en direct sur le net, interactivité avec les spectateurs et tout le bazard... chat en meme temps etc..
 
Tout ça programmé en php...
Ca me fait a peu pres 30 connéctés qui effectuent chacun une connection mysql (avec mysql_connect) toutes les 3 secondes.. donc 30 ouvertures-fermeture toutes les 3 secondes..
 
Est ce que ça vaut le coup d'utiliser une connexion persistante a mon serveur MySQL? (sachant que le prog tourne des fois en intranet et des fois sur le net directement et sachant quon attend de plus en plus de spectateurs .. jusqua 600  :ouch:  )..
 
J'aimerai l'avis de personnes qui utilisent cette fonction..
merci!
 
 :hello:
 
EDIT: ajout de smileys pour egayer mon post..


Message édité par Mr yvele le 04-03-2003 à 15:13:47

---------------
yvele n'est plus.
Reply

Marsh Posté le 04-03-2003 à 15:09:23   

Reply

Marsh Posté le 04-03-2003 à 15:20:24    

J'utilise pas cette fonction mais d'après ce que j'en lis, ça doit pouvoir aider ton serveur, oui. Faut absolument que tu fasses bien gaffe à fermer la connec quand t'es sûr que plus personne ne l'utilise (genre quand tu détectes qu'il n'y a plus personne sur ton site, par exemple, tu fermes toutes les connecs), mais sinon ça t'évitera d'ouvrir/fermer une connec dans chaque script. Autant pour 5/10 utilisateurs c'est pas la mort, autant dans ton cas ça peut aider.
Donc à moon avis c'est à tester.


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 04-03-2003 à 15:27:32    

Hum merci taiche...
 
En fait je n'utiliserai la connexion persistante que pendant un "spectacle" (puisque pendant un spectacle les requetes vont fuser..) une fois le spectacle fini, la connexion est fermée et le site tout bidon reprend son cours normal avec des mysql_connect() normaux..  :D  
 
Mais il reste un hic!  :heink:  
Comment je fais pour fermer cette connexion persistante? elle se ferme pas??
 

Citation :

la connexion au serveur MySQL ne sera pas terminée avec la fin du script. Au lieu de cela, le lien sera conservé pour un prochain accès ( mysql_close ne terminera pas une connexion persistante établie par mysql_pconnect ).


--> ce qui est tout a fait normal.. par contre il n'est pas expliqué comment mettre fin a la connexion..
 
 
PS: y a une petite bride de topic ici :
http://forum.hardware.fr/forum2.ph [...] h=&subcat=


---------------
yvele n'est plus.
Reply

Marsh Posté le 04-03-2003 à 15:36:03    

Mr yvele a écrit :

Mais il reste un hic!  :heink:  
Comment je fais pour fermer cette connexion persistante? elle se ferme pas??


En cherchant rapidement sur google, j'ai trouvé ça (en anglais) : http://p2p.wrox.com/archive/pro_php/2001-10/4.asp

Citation :

In order to force a closing of a persistent connection set a low wait_timeout in MySQL. On a heavy trafic site use mysql_connect and close()


Donc apparemment, c'est MySQL qui flingue la connec tout seul comme un grand. Par contre, pour la remarque du gars qui dit que pour les gros trafics, il vaut mieux utiliser mysql_connect() et close(), c'est passk'apparemment la fonction a du mal avec les gros trafics. En même temps, c'était fin 2001, donc peut-être que ça a changé depuis.
Bref, lis bien les commentaires des gens sur ce lien, ils sont très instructifs et les avis ont l'air d'être partagés quant à l'usage de mysql_pconnect().


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 04-03-2003 à 15:39:43    

Je me rappelle que Joce avait posté ici un jour que les connexions persistantes sur MySQL ne valaient pas le coup parce qu'elles étaient ultra-optimisées.

Reply

Marsh Posté le 04-03-2003 à 15:41:51    

drasche a écrit :

Je me rappelle que Joce avait posté ici un jour que les connexions persistantes sur MySQL ne valaient pas le coup parce qu'elles étaient ultra-optimisées.


Tu veux dire les connexions non persistantes étaient ultra-optimisées ? Passke sinon, un truc qui vaut pas le coup alors que c'est optimisé, j'vois pas le souci [:ddr555]


---------------
Everyone thinks of changing the world, but no one thinks of changing himself  |  It is the peculiar quality of a fool to perceive the faults of others and to forget his own  |  Early clumsiness is not a verdict, it’s an essential ingredient.
Reply

Marsh Posté le 04-03-2003 à 15:43:16    

oooops sorry, mauvaise formulation; en fait, je voulais parler des connexions tout court :D

Reply

Marsh Posté le 04-03-2003 à 15:44:33    

Oui merci taiche..
 
Je viens de voir les commentaires et ces histoires de timeout...
J'avais pas fait gaffe... ils sont une peu #!^@ quand meme de pas le preciser dans la doc directement..
 
C'est vrai que c'est mitigé.. mais c'est vrai aussi que ça date de fin 2001... donc bon..
 
Bref, en tout cas merci, je pense que je vais essayer cette fonction de suite, afin de me faire ma propre petite idée..
 
Allé merci beaucoup.. a+
 
 :hello:


---------------
yvele n'est plus.
Reply

Marsh Posté le 04-03-2003 à 15:46:06    

drasche a écrit :

Je me rappelle que Joce avait posté ici un jour que les connexions persistantes sur MySQL ne valaient pas le coup parce qu'elles étaient ultra-optimisées.


 
 :??:
 
EDIT: ah oké..  
 
 
PS: heu si vous avez des experiences avec cte fontion, postez ici... merci!  :jap:


Message édité par Mr yvele le 04-03-2003 à 15:47:02

---------------
yvele n'est plus.
Reply

Sujets relatifs:

Leave a Replay

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