Google
Web dns.bdat.net

[PHP-ES] MySQL persistent connections

From: Rafael (rsalazar(EN)ucol.mx)
Date: Sat Oct 16 2004 - 23:15:35 CEST


        Saludos,
        escribo porque estoy tratando de utilizar conexiones persistentes (en
MySQL, con pconnect), pero no da los resultados que yo esperaba.
Considérese el sig. snippet:

     $id_conn = mysql_pconnect(DB_HOST, DB_USER, DB_PSWD)
                 OR die(mysql_error() .' ('. mysql_errno() .')');
     echo "<div class=\"info\">\n"
          .' Thread Id: '. mysql_thread_id($id_conn) ."<br />\n"
          ." <ol type=\"i\">";
     $id_qry = mysql_list_processes($id_conn);
     while( $reg = mysql_fetch_assoc($id_qry) ) {
       echo ' <li><pre>';
       print_r($reg);
       echo "</pre></li>\n";
      }
     echo " </ol>\n"
          ."</div>\n";

        El problema es que me crea la conexión independiemente de si ya hay una
abierta o no. Puedo comprobar que crea las conexiones (y éstas siguen
"vivas"), pero simplemente no las re-utiliza (el tiempo no es, en ocasiones
crea una nueva después de 25 seg, en otras antes de 5 seg)

        Por lo que dice el manual, de no haber una conexión la creará, y de haberla
la re-utilizará, siempre que sea la misma conexión*; y éstas sólo se
cerraran cuando se venza el tiempo de vida de las mismas (no se cierran al
invocar la función mysql_close)
* Misma Conexión: se considerará como la "misma conexión" a aquellas que
provengan del mismo host, con el mismo usuario y contraseña.

        ¿Alguna idea de por qué no funciona? —pretendo usar conexiones persistentes
debido a que utilizo tablas temporales.

-- 
	Rafael
PD	Un bug: mysql_close no cierra la conexión (permanece activa en MySQL), 
pero sí parece evitar que se re-utilice la conexión.
-- 
PHP Spanish Localization Talk Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


This archive was generated by hypermail 2.1.7 : Fri Nov 12 2004 - 20:21:31 CET