Ver Mensaje Individual
  #9 (permalink)  
Antiguo 24/03/2003, 11:24
Cluster
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
El caché de datos se trataría de ver que consultas haces en todo momento y ver si ya se han echo en otro momento.

Para ello tendrias que:

Todas las consultas que hagas a tu BD .. el SQL tendría que pasar por algun script o rutina tuya que sería la que entregue el resultado de la caché o haga la consulta. Así mismo gestione tiempos de expiración de la caché*

La "Caché" consiste en guardar el resultado de tu consulta en un archivo de texto plano en el sistema de archivos del servidor .. con un nombre asociado a la consulta que corresponde. A su vez necesitarías de algun archivo extra (o incluso una pequeña BD tabla ..) con la asociación de indice -> consulta que pertenece.

El funcionamiento de tu script que "lance" la consulta sería algo así:

1) Le pasas la cadena del SQL a ejecutar:

ejemplo: SELECT * FROM tabla1

2) Se mira esa consulta en tu archivo/tabla de consultas realizadas .. Si no existe se ejecuta la consulta con las funciones del motor de BD q uses .. Si existe se entrega el archivo que corresponda con esos resultados.

.. Como veras esto no es cosa de 10minutos y es largo de explicar con muchos detalles por medio .. Por ejemplo "como hacer el sistema que sea "trasnparente" como para que no dé problemas en consultas de datos paginados ..etc ...

Tambien habría que ver que tipo de consultas haces y para que tipo de aplicación .. El caché no es bueno en todos los casos ...

Por ejemplo .. con respecto al tipo de aplicación:
Un sistema típico de noticias .. en el que muestras en todas tus páginas las 10 ultimas noticias que entraron a la BD ... El sistema de "caché" en este caso seria generar esos datos de las noticias (hacia un archivo de texto plano, XML, etc .. o incluso en HTML ya formateado para su destino final ..) SOLO cuando se modifique la base de datos .. es decir; ante un INSERT/DELETE/UPDATE .. Ese "archivo de caché" lo generarias en tus rutinas que hagan esas operaciones en la BD .. El "sitio" en sí (la web) solo accedería para mostrar esos datos de las ultimas noticias al archivo de texto plano Y no a la BD haciendo consultas constantemente.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.