sql >> Base de Datos >  >> RDS >> Mysql

La mejor técnica para almacenar en caché los resultados de consultas que cambian con poca frecuencia

En la función para generar la tabla, haga que almacene el resultado en un archivo en el disco:

/cache/groups/1.txt
/cache/groups/2.txt

No necesariamente tiene que ejecutar un trabajo por lotes semanal para ello, al llamar a la función para obtener los datos, verifique si el caché está desactualizado (o no existe). Si es así, genere y almacene en caché los resultados entonces. Si no, simplemente devuelva el archivo almacenado en caché.

function getGroupTable($groupId) {
    if (cacheIsStale($groupId)) {
        generateCache($groupId);
    }
    return file_get_contents($cacheFile);
}

El cacheIsStale() la función podría simplemente mirar las marcas de tiempo del archivo para probar la frescura.