У меня есть php-приложение, в котором некоторые данные меняются еженедельно, но читаются очень часто.
SQL-запросы, которые извлекают данные и код php для вывода html, довольно сложны. Существует несколько объединений таблиц и многочисленные вычисления, но они приводят к довольно простой HTML-таблице. Пользователи группируются, и таблица одинакова для каждой группы каждую неделю, но различна для разных групп. Я потенциально мог бы иметь сотни таблиц для тысяч пользователей.
По соображениям производительности я бы хотел кешировать эти данные. Вместо того, чтобы запускать эти запросы и вычисления каждый раз, когда кто-то посещает страницу, я хочу запускать еженедельный процесс, чтобы сгенерировать таблицу для каждой группы, давая мне простое чтение при необходимости.
Мне было бы интересно узнать, какие методы вы использовали успешно или неудачно для достижения чего-то подобного?
Опции, которые я вижу, включают:
- Сохранение html-результата вычислений в таблице MySQL, определенной группой пользователей
- Сохранение результирующих данных в таблице MySQL, определенной группой пользователей (сложно, поскольку нет фиксированного числа элементов данных)
- Кэширование вывода страницы в статических файлах
Любые другие предложения будут приветствоваться!