Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
877 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP/MySQL]Rendre une cnx persistante au pool avant la fin du script?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP/MySQL]Rendre une cnx persistante au pool avant la fin du script?

n°1396268
Yoyo@
Posté le 28-06-2006 à 09:11:41  profilanswer
 

Salut,
 
J'utilise PHP/MySQL dans un environnement Apache.
 
J'ai une question concernant les connexions persistantes. ("pconnect" )
 
Je sais qu'elles sont retournées au pool à la fin de mon script.
 
Maintenant, imaginons que mon script utilise l'une de ces connexions, et qu'il voudrait rendre la connexion dispo dans le pool avant la fin du script, car celui ci a un gros temps d'exécution... Est ce possible? ou alors dois-je quand même attendre la fin du script?*
 
Merci

mood
Publicité
Posté le 28-06-2006 à 09:11:41  profilanswer
 

n°1396282
esox_ch
Posté le 28-06-2006 à 09:32:18  profilanswer
 

Evite d'utiliser les connections persistantes ..
Si je me trompe pas elles ont même été enlevées dans mysqli ...


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1396288
Yoyo@
Posté le 28-06-2006 à 09:39:14  profilanswer
 

Je ne pense pas que je vais les utiliser, car je saiss que MySQL est très rapide à la connexion, et que donc, il y a assez peu d'intérêt à utiliser les connection persistantes, mais quand même, je me posais cette question, et j'aurais aimé savoir...
 
D'autre part, vu que j'utilise PHP 4.4.1 (webhosting...), il n'y aura pas de mysqli pour moi.
 
Donc? Une idée pour ma question?

n°1396529
mIRROR
Chevreuillobolchévik
Posté le 28-06-2006 à 13:55:40  profilanswer
 

+1 pour esox_ch  
 
c est une faille sécuritaire en soi
tu demandes une connexion juste au besoin aussi longue soit elle

n°1396587
Yoyo@
Posté le 28-06-2006 à 14:33:21  profilanswer
 

Non, mais je crois que vous n'avez pas compris ma demande, d'un point de vue technique.
 
OK:
 
Imaginons que j'ai deux scripts tournant en parallèle, utilisant chacun une connexion persistante. Une fois que les scripts auront terminé, ces deux connexions resteront établies, et reviendront dans le pool de connex.
 
Après, imaginons que je lance un autre script, utilisant l'une des deux connex du pool. Ce script utilise cette connexion pendant 1 seconde, puis ensuite fait un gros traitement, mais n'a plus besoin de la connexion. Cependant, il ne va la restituer au pool qu'à la fin du script, donc, par exemple, 1 minute après.
 
Dès lors, si pendant cette minute, mes deux premiers scripts sont relancés, 'lun des deux n'aura plus de connexion dispo dans le pool, et donc, une 3ème connexion va être créée...alors que si mon gros script avait pu relâcher la connexion, celà aurait permis de ne pas avoir à créer la 3ème connexion...
 
VOus voyez où je veux en venir?

n°1396612
mIRROR
Chevreuillobolchévik
Posté le 28-06-2006 à 15:01:35  profilanswer
 

non je comprends meme pas ton truc de pool
j imagine a peine ce que c est c est tout :D
 
"Ce script utilise cette connexion pendant 1 seconde, puis ensuite fait un gros traitement, mais n'a plus besoin de la connexion."
 
alors tu la fermes a ce moment n importe qui a acces a ta bdd avec les droits associés c est super dangereux
 
il vaut mieux trois connexions ponctuelles qu une seule grosse toujours ouverte apres tu fais ce que tu veux je dis juste que c est pas secure

n°1396617
Yoyo@
Posté le 28-06-2006 à 15:07:54  profilanswer
 

mIRROR a écrit :

non je comprends meme pas ton truc de pool
j imagine a peine ce que c est c est tout :D
 
"Ce script utilise cette connexion pendant 1 seconde, puis ensuite fait un gros traitement, mais n'a plus besoin de la connexion."
 
alors tu la fermes a ce moment n importe qui a acces a ta bdd avec les droits associés c est super dangereux
 
il vaut mieux trois connexions ponctuelles qu une seule grosse toujours ouverte apres tu fais ce que tu veux je dis juste que c est pas secure


n°1396625
esox_ch
Posté le 28-06-2006 à 15:21:25  profilanswer
 

C'est quoi ces histoires de faire des gros traitements en gardant ta connection ouverte ? :heink: ... Des que tes requetes sont balancées tu fais un petit mysql_close() et comme ça pas besoin que mysql crée des nouveaux threads ... Parcontre (faudrait que qqn de plus compétent que moi confirme), si je me trompe pas mysql ouvre par defaut 20 threads de connection, donc tant que c'est 1 script long qui s'execute ... ça doit pas être catastrophique ... reste qu'il faut fermer la connection


---------------
Si la vérité est découverte par quelqu'un d'autre,elle perd toujours un peu d'attrait
n°1396630
Yoyo@
Posté le 28-06-2006 à 15:26:24  profilanswer
 

esox_ch a écrit :

C'est quoi ces histoires de faire des gros traitements en gardant ta connection ouverte ? :heink: ... Des que tes requetes sont balancées tu fais un petit mysql_close() et comme ça pas besoin que mysql crée des nouveaux threads ... Parcontre (faudrait que qqn de plus compétent que moi confirme), si je me trompe pas mysql ouvre par defaut 20 threads de connection, donc tant que c'est 1 script long qui s'execute ... ça doit pas être catastrophique ... reste qu'il faut fermer la connection


 
Mais... Je parle ici de connexions persistantes. (mysql_pconnect si tu préfères)...
Ce que tu dis est OK pour une connxion standard, mais ce n'est pas de ça dont je parle ici. (http://fr2.php.net/manual/en/funct [...] onnect.php)
Ca permet de ne pas avoir à fermer la connexion...
 
Je précise bien depuis le début que je parle de connexion persistante, et nonn pas de connexion standard...
 
Je cherche donc à rendre la connexion une fois que je n'en ai plus besoin, pendant mon traitement!


Message édité par Yoyo@ le 28-06-2006 à 15:27:14
n°1396633
mIRROR
Chevreuillobolchévik
Posté le 28-06-2006 à 15:32:15  profilanswer
 

Citation :

Mais... Je parle ici de connexions persistantes. (mysql_pconnect si tu préfères)...
Ce que tu dis est OK pour une connxion standard, mais ce n'est pas de ça dont je parle ici. (http://fr2.php.net/manual/en/funct [...] onnect.php)


 
ah on peut faire des connexion sql avec php  [:petrus dei]  

mood
Publicité
Posté le 28-06-2006 à 15:32:15  profilanswer
 

n°1396699
Yoyo@
Posté le 28-06-2006 à 16:47:18  profilanswer
 

mIRROR a écrit :

Citation :

Mais... Je parle ici de connexions persistantes. (mysql_pconnect si tu préfères)...
Ce que tu dis est OK pour une connxion standard, mais ce n'est pas de ça dont je parle ici. (http://fr2.php.net/manual/en/funct [...] onnect.php)


 
ah on peut faire des connexion sql avec php  [:petrus dei]


 
Je ne dois pas saisir la subtilité de ton propos...
 
Bon, quelqu'un d'autre pour m'aider (qui comprenne vraiment ce que je demande?)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP/MySQL]Rendre une cnx persistante au pool avant la fin du script?

 

Sujets relatifs
script impossible à modifier ?FTP en PHP : comment garder la connexion créée ???
PHP-MySQL : probleme de connexion MySQLcode d'erreur copie de fichier[Script bat]
script irc anti-idleProblème affichage données par extraction MySQL après vérification mdp
[Résolu] [MySQL] Comparaison entre 2 tablesProbleme de jointure MySQL
[PHP] Clide[PHP] PHP et flux rss
Plus de sujets relatifs à : [PHP/MySQL]Rendre une cnx persistante au pool avant la fin du script?


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR