Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Capacidades de las bases de datos

Estas en el tema de Capacidades de las bases de datos en el foro de Bases de Datos General en Foros del Web. Hola, foreros: Me encuentro haciendo una web donde puedo haber mas de 50 personas conectadas a la vez. Mi duda es la siguiente: Los usuarios ...
  #1 (permalink)  
Antiguo 29/08/2008, 14:17
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años
Puntos: 19
Capacidades de las bases de datos

Hola, foreros:

Me encuentro haciendo una web donde puedo haber mas de 50 personas conectadas a la vez. Mi duda es la siguiente:

Los usuarios estan cosntantemente viendo numerosas consultas a la base de datos, alguna de ellas bastante pesada. Mi duda es:

¿Existe algun tabla de cuanto pesa cada consulta?¿Cuanto le cuesta procesarla al servidor?
  #2 (permalink)  
Antiguo 29/08/2008, 15:50
Avatar de Avatar810  
Fecha de Ingreso: agosto-2007
Ubicación: Por rumbos Regios
Mensajes: 485
Antigüedad: 16 años, 8 meses
Puntos: 23
Respuesta: Capacidades de las bases de datos

La cantidad de recursos consumidos depende de la arquitectura de la base de datos, de la estructura de tus consultas y la cantidad de usuarios que estan usando la aplicacion, a mayor usuarios y menor estructuracion pues los recursos se disparan.
Yo soy responsable de un sitio en que tenemos ventas online con una cantidad de visitas considerables al día (superior a 100 en cada instante) y tenemos todo dentro de la BD (incluyendo imagenes y audio) lo que tuvimos que hacer es llevar buenas practicas de desarrollo (sobretodo pq el que nos creo la BD fue muy descuidado y los prob se detectaron ya muy avanzado el desarrollo de las tiendas)

Algunas recomendaciones son:
NO uses "SELECT * FROM tabla WHERE ..." pues con esto cargas cosas de mas en memoria.
usa "SELECT campo1, campo2,... FROM ...."
en lugar de unir tablas en las consultas usa los JOIN
NO: "SELECT t1.c1, t2.c2 FROM t1,t2 WHERE t1.id=t2.id and ..."
SI: "SELECT t1.c1,t2.c2 FROM t1 INNER JOIN t2 ON t1.id=t2.id WHERE ..."

SIEMPRE PERO SIEMPRE CIERRA TUS CONECCIONES A LA BD en este punto muchos fallamos, es cierto que las BD estan creadas para liberar memoria cuando detectan que deja de ser utili lo que se contiene ahi, pero a veces son tanta la demana de recursos que no se logra liberar a tiempo y cause muchos dolores de cabeza (lo digo por expeiencia)

Y si puedes tambien al terminar de utilizar los datos de una consulta liberalos p.e. para mysql es mysql_free_result(identificador) donde este identificador son los resultados que te devuelve al realizar el mysql_query()

Espero que te sirvan estos comentarios y tu aplicacion no te de tantos problemas.
  #3 (permalink)  
Antiguo 30/08/2008, 11:07
Avatar de salbatore  
Fecha de Ingreso: abril-2007
Ubicación: Springfield
Mensajes: 1.567
Antigüedad: 17 años
Puntos: 19
Respuesta: Capacidades de las bases de datos

Hola,

Jeje, menuda respuesta... muchas gracias campeon!...
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:55.