Одна из основных целей кеширования - экономить ресурсы, а не делать такие вещи, как попадание в базу данных по каждому запросу. В свете этого я смущен тем, что все Codeigniter делает в контроллере, когда он встречает оператор cache()
.Кабель вывода Codeigniter: какие части функции вызываемого контроллера выполняются?
Например:
$this->output->cache(5);
$data=$this->main_model->get_data_from_database();
$this->load->view("main/index", $data);
Я понимаю, что кэшируются main/index
HTML-файл будет отображаться в течение следующих 5 минут, но в течение этих 5 минут будет контроллер еще выполнить get_data_from_database()
шаг? Или это просто пропустить?
Примечание: the Codeigniter documentation говорит, что вы можете поместить инструкцию cache()
в любом месте функции контроллера, что еще более смущает меня о том, что происходит.
Да, б/у профайлер будет доступен только один раз, я не уверен, насколько это полезно. Большой вопрос состоит в том, чтобы знать, что происходит при попытке ** 2 **, когда активен «кеш». –
Действительно. Я считаю, что лучшим решением является использование 'log_message ('info', 'message');' in 'get_data_from_database();' method. – Irimia