[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Нужно ли кэшировать все страницы блога?
ak167
Уже как-то неудобно писать в раздел новичков, но я только сейчас начал изучать кэшировние в php.

Вопрос:
В моем самописном блоге имеется 1500 тем. Вывод конкретной темы осуществляется с помощью передачи ее id GET-методом, т.е. blog.php?id=1
Получается, что у сайта 1500 урлов + еще 150 урлов с главной страницы. Легко понять, что при кэшировании на стороне сервера придется создавать 1650 файлов, а значит будут задержки при загрузки, т.к. найти один файл из большого количества файлов в папке сложнее и дольше, чем найти и открыть ячейки из БД. Следовательно, появляется вопрос стоит ли кешировать все 1650 урлов на стороне сервера? думаю нет. А на стороне пользователя (локально) - да. Правильно?
А как кэшировать главную страницу, на которой выводится по 10 описаний кажой темы и 150 ссылок на страницы. Достаточно кэшировать только первую страницу или все 150?

Как вы кэшируете в своих движках?



Спустя 46 минут, 46 секунд (17.12.2010 - 17:54) inpost написал(а):
ak167
А я до сих пор пишу в вопросах для новичков =)

Спустя 7 минут, 26 секунд (17.12.2010 - 18:01) Basili4 написал(а):
inpost
я тоже глупые вопросы пишу в раздел для новичков.

Цитата (ak167 @ 17.12.2010 - 18:07)
Как вы кэшируете в своих движках


В зависимости от задачи.

В твоем случае. Я бы кешировал блоги к которм есть обращение а не все подряд.
И разумеется на стороне сервера

Спустя 5 часов, 37 минут, 22 секунды (17.12.2010 - 23:39) ak167 написал(а):
Ясно. Спасибо=)

Спустя 4 минуты, 8 секунд (17.12.2010 - 23:43) inpost написал(а):
ak167
Неужели посещают сайт более 2000 людей онлайн? Если нет, то чего переживать, mysql выдержит =)

Спустя 6 минут, 40 секунд (17.12.2010 - 23:49) ak167 написал(а):
inpost, да! Причем иногда даже до 2500 доходит, но в обычные дни не более 1500.

Спустя 7 минут, 29 секунд (17.12.2010 - 23:57) inpost написал(а):
ak167
Может стоит через крон кешировать именно страницы новосозданные? Как бы на второй день попадают в кеш, а через месяц оттуда убираются, так как нет от них более толка.

Спустя 27 минут, 20 секунд (18.12.2010 - 00:24) ak167 написал(а):
inpost, а вот про крон можешь по-подробнее рассказать? Как это осуществить? Желательно на примере.
Просто я читал в интернете как делать кэш, а там про крон ни слова не сказано.

Спустя 4 часа, 15 минут, 56 секунд (18.12.2010 - 04:40) kirik написал(а):
Да не парься, тут выборка по id будет очень быстрой, а частозапрашиваемые записи будут кэшироваться в памяти самим сервером БД. И это будет гораздо менее ресурсоемко, чем отдавать страницу с диска.

Спустя 1 день, 14 часов, 43 минуты, 29 секунд (19.12.2010 - 19:24) ak167 написал(а):
Цитата
Да не парься, тут выборка по id будет очень быстрой, а частозапрашиваемые записи будут кэшироваться в памяти самим сервером БД. И это будет гораздо менее ресурсоемко, чем отдавать страницу с диска.


kirik, а как узнать точно ли они кэшируются сервером БД или нет?

Спустя 2 часа, 6 минут, 26 секунд (19.12.2010 - 21:30) kirik написал(а):
Цитата (ak167 @ 19.12.2010 - 11:24)
kirik, а как узнать точно ли они кэшируются сервером БД или нет?

Не уверен, что можно посмотреть прям весь кэш сервера plain-text виде.
Можешь проверить так - выполни два запроса:
SELECT SQL_NO_CACHE ... FROM ...
и
SELECT ... FROM ...

и посмотри их время выполнения (первый запрос запрещает свое кэширование, второй-обычный). Если одинаковое - значит кэш для данного запроса не сработал.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.