Evpatiy данные перестают быть актуальные раз в секунду? Запросы от разных пользователей разные в большинстве?
Там много всего. Что-то актуализируется в момент запроса, что-то раз в промежуток времени. А запросы да, разные. Зато пользователей не много ))
А в этом году нельзя вывод из БД сериализовать "как есть" и положить в обычный какой-нибудь текстовый файличек, а там, где в коде дергается запрос к БД, содержимое которого в этот файличек положили, вместо запроса поставить условие "если текущее время минус дата создания файлика меньше такого-то интервала, то взять файлик, десериализовать его и отдать вместо результата запроса, либо, в противном случае, послать запрос"??? Это делается, вот буквально за 15 минут, причем, если у вас архитектура человеческая, то надо будет только в месте запроса дописать буквально 5-6 строчек кода, а остальная система вообще не заметит, что что-то изменилось. Результат работы функции не изменится, структура не изменится, ничего не изменится, кроме времени на обработку запроса, который 9 раз из 10 будет дергаться почти бесплатно и мгновенно из кэша. Просто я не знаю, как дела обстоят с кэшированием запросов у вас в БД. Не работал с ней.
В этом нельзя. Архитектура отсутствует. Не ООП. По разным полям разные требования актуальности - вплоть до "только в реальном времени". Несколько источников данных кроме БД. В среднем за трое суток все данные выбираются хотя бы по разу - придется выложить половину базы в файлики. В общем позже будет разворачиваться вторая база, в которой будут храниться актуальные данные отдельных таблиц без длинной истории и этот вопрос будет прорабатываться.