[MySQL] Optimizar Conexiones mediante PHP ?

Iniciado por Diabliyo, 9 Febrero 2012, 15:55 PM

0 Miembros y 1 Visitante están viendo este tema.

Diabliyo

Buen dia.

Traigo entre manos la duda de: Que es mas optimo ?: realizar una conexion a mysql por cada consulta o bien realizar una unica conexion y guardarla en sesion y utilizarla todo el tiempo ?

Cuando menciono de realizar una conexion a mysql por cada consultar me refiero a tener una funcion mas o menos asi:

function consultar($query)
          {
          $link= conectar_mysql();
          $consulta= mysql_query($query);
          mysql_close($link);
          return $consulta;
          }


O bien tener una unica conexion a la base de datos en sesion, algo asi:

if( !$_SESSION["dblink"] )
          $_SESSION["dblink"]= conectar_mysql();


Cual es mas optima ?, porque estoy empezando a recibir muchas visitas en mi sitio y esto me esta matando :(

Saludos !

el-brujo

CitarQue es mas optimo ?: realizar una conexion a mysql por cada consulta o bien realizar una unica conexion y guardarla en sesion y utilizarla todo el tiempo ?

Suele ser más óptimo lo segundo, pero también consume más recursos.

Se llama "persistent connection"

http://es.php.net/mysql_pconnect

mysql.allow_persistent

Citarporque estoy empezando a recibir muchas visitas en mi sitio y esto me esta matando

De todas maneras usando pmysql no vas a notar nada. Te recomiendo usar un cacheador de scripts php, tipo APC.

APC (Alternative PHP Cache)
http://pecl.php.net/package/APC

Optimizar LAMP
http://foro.elhacker.net/gnulinux/optimizar_lamp-t341795.0.html

Herramientas para Optimizar MySQL
http://foro.elhacker.net/tutoriales_documentacion/herramientas_para_optimizar_mysql-t214396.0.html

дٳŦ٭

Yo te recomendaría la persistente o eAccelerator o ambas, es cuestión de hacer pruebas de estrés y ahí te darás cuenta. Saludos


Con sangre andaluza :)