Tengo una aplicación web php donde ciertos datos cambian semanalmente pero se leen con mucha frecuencia.Mejor técnica para el almacenamiento en caché de resultados de consultas que cambian con poca frecuencia
Las consultas SQL que recuperan los datos y el código php para la salida html son bastante complejas. Hay varias combinaciones de tablas y numerosos cálculos, pero dan como resultado una tabla html bastante básica. Los usuarios están agrupados, y la tabla es la misma para cada grupo cada semana, pero diferente para diferentes grupos. Podría tener cientos de tablas para miles de usuarios.
Por motivos de rendimiento, me gustaría guardar estos datos en caché. En lugar de ejecutar estas consultas y cálculos cada vez que alguien llega a la página, quiero ejecutar un proceso semanal para generar la tabla para cada grupo y obtener una lectura simple cuando sea necesario.
Me gustaría saber qué técnicas ha utilizado con éxito o sin éxito para lograr algo como esto?
Opciones puedo ver incluyen:
- almacenar el resultado html de los cálculos en una tabla de MySQL, identificadas por grupo de usuarios
- Almacenamiento de los datos resultantes en una tabla MySQL, identificadas por grupo de usuarios (Difícil ya que no hay un número fijo de elementos de datos)
- el almacenamiento en caché el resultado de la página en archivos estáticos
Cualquier otra sugerencia será bien recibida!
Algunas buenas sugerencias, gracias. – Damovisa
Buena lista de sugerencias aquí. Tenga en cuenta que el almacenamiento en caché de consultas de MySQL no es una solución completa, tiene ventajas e inconvenientes (puede empeorar las cosas en los datos actualizados con frecuencia). Como sugiere Assaf, es solo una de las muchas opciones. – thomasrutter