Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PHP: Общие вопросы > Где лучше хранить кэш данных со страницы


Автор: tolik777 19.6.2006, 10:42
У меня сайт (около 2000 хостов в сутки).
На главной странице имеем много запросов к БД (правда они простые), но около 20 шт.
Хочу немного разгрузить сервер и сделать кэширование главной странице. Правда не всей, а двух частей. Обновлять часто его не надо, достаточно будет раз в 1 час одну часть страницы, а другую вообще 1 раз в сутки.
В связи с этим вопрос где лучше хранить сам кэш: в файлах или в базе? Нужно исключительно для снижения нагрузки на сервер.  

Автор: AztEK 19.6.2006, 10:54
Кешируем HTML-код? Тогда, наверное, лучше в файлах... Имхо хранить такое в БД извращение... 

Автор: z-END 19.6.2006, 11:02
Цитата(tolik777 @  19.6.2006,  11:42 Найти цитируемый пост)
В связи с этим вопрос где лучше хранить сам кэш:

если требуется разгрузить mySQL сервер, то однозначно в файле=) если Apache сервер то имхо пофик.

может просто разрешить кефирование у клиента?  

Автор: tolik777 19.6.2006, 12:38
А как разрешить? 
<meta name="Document-state" content="Static">  ?


 

Автор: z-END 19.6.2006, 12:42
Вот так запрещается кэширование страницы: 
Код

// Date in the past
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");

// always modified
header("Last-Modified: " . gmdate("D, d M Y H:i:s") . " GMT");

// HTTP/1.1
header("Cache-Control: no-store, no-cache, must-revalidate");
header("Cache-Control: post-check=0, pre-check=0", false);

// HTTP/1.0
header("Pragma: no-cache");
 
изходя из этого я думаю можно послать заголвок о том что страница, (если она уже была открыта до этого) не изменилась и будет открыта из кэша бразуера. 
 

Автор: Mal Hack 19.6.2006, 13:23
http://vingrad.ru/PHP-ART-003003 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)