Кэширование + не обращаться к БД

Sync

Новичок
Кэширование + не обращаться к БД

Возник вопрос скорее не по кэшированию страниц, а по тому как автоматизировать "отдых" скриптов и базы при этом самом кэшировании. Например есть у нас такой метод, пример условный с использованием того же smarty:
PHP:
public function show_last_forum_threads () 
{
     $smarty = new Smarty();
     // тут все директивы по compile_dir, template_dir etc.
     // ....
     $smarty->caching = true; 
     $smarty->cache_lifetime = 3600;
    
     $db = DB::get_instance();
     $threads = $db->get_all("тут какой-то нетривиальный запрос к БД");

     $smarty->assign("threads", $threads)
     $smarty->display('index.tpl');
}
То есть при взятии шаблона с кэша запрос к БД продолжает отрабатывать, чего не требуется.
Каким способом лучше отслеживать такие холостые дествия скриптов? Вопрос скорее всего распространенный, но столкнулся
с этим впервые.
 

DiMA

php.spb.ru
Команда форума
MySQL 5+ кеширует все запросы и если данные в базе не меняются, то на повторный такой же запрос ответит мгновенно. Проще заставить MySQL кешировать спец-запрос (в котором данные затронутых таблиц редко меняются), чем химичить самому.
 
Сверху