Foros del Web » Programando para Internet » PHP »

readfile o bbdd

Estas en el tema de readfile o bbdd en el foro de PHP en Foros del Web. Buenas, Ultimamente tengo problemas de consumo de recursos y de conexiones a la BBDD porque en mi maquina en un momento dado acceden muchos usuarios ...
  #1 (permalink)  
Antiguo 07/03/2008, 03:52
 
Fecha de Ingreso: noviembre-2003
Ubicación: Alicante
Mensajes: 111
Antigüedad: 20 años, 5 meses
Puntos: 1
readfile o bbdd

Buenas,

Ultimamente tengo problemas de consumo de recursos y de conexiones a la BBDD porque en mi maquina en un momento dado acceden muchos usuarios concurrentemente.

Ahora mismo todos los usuarios acceden con AJAX a un archivo de texto que genera un PHP accediendo a la base de datos.

Se me ha ocurrido el generar este archivo de texto mediante PHP con un CRON cada x tiempo (necesito tenerlo todo muy actualizado) y que los usuarios accedan a este archivo de texto sin tener que conectarse a la base de datos.

No puedo acceder a traves de AJAX directamente al archivo de texto, pues no quiero que la gente vea en el codigo donde se encuentra este archivo. Asi que tb me tocaria utilizar php para leer el archivo con readfile y sacarlo. (En el codigo PHP tengo una linea de seguridad para que no puedan usar ese archivo scripts fuera del servidor)

Que creeis que consume menos recursos: acceder a la base de datos y generar el archivo de texto o leer un arrchivo con readfile y sacarlo??? Cual de los dos puede tener más problemas a la hora de tener muchoooooss usuarios concurrentes?

No quiero que el cambio sea en vano. Gracias por vuestras respuestas maestros.
  #2 (permalink)  
Antiguo 07/03/2008, 10:36
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Re: readfile o bbdd

Si son concurrentes, y en bastante cantidad, lo que te conviene es usar una base de datos, ¿la razón? Es que las bases de datos estan optimizadas para eso, y un archivo de texto plano, si muchos tratan de leer y escribir en el, empiezan problemas de sincronía y después puede que tu aplicación se alenté mas al estar esperando que otro usuario "suelte" el archivo.

Si te interesa la rapidez, lo que puedes hacer es guardar los resultados de tu consulta en una tabla en la BDD del tipo Memory, y usarla de cache. Las tablas MEMORY son volátiles, pero sirven bastante bien para guardar datos en memoria del tipo cache.

Espero con eso aclarar tus dudas.

Saludos.
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 04:07.