[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Понимание кэширования
neitrosha
Сейчас смотрю кэширование, возник такой вопрос.
Если мы не прописываем, что нельзя кэшировать, то возникает такая ситуация:

Вот мы смотрим новости (а они ведь часто обновляются), побродили по паре ссылок, вернулись назад в новости, а они не обновлены, хотя, на самом деле, администратор добавил пару новостей на главную страницу.

В случае, если мы пишем, что нельзя кэшировать, то побродив по сайту и вернувшись назад, мы увидим обновившуюся информацию.

Так ведь?
И какие можете дать советы по кэшированию? Я, конечно, читаю про него сейчас, но хочется увидеть советы, которые более связаны с нынешними реалиями



Спустя 5 минут, 55 секунд (14.04.2012 - 21:10) VELIK505 написал(а):
Используй любое хранилеще в оперативной памяти.
это может быть memcache, redis например.
записываешь одновременно в базу и в оперативу и отдаёшь результаты из оперативы.
Я всегда теперь так делаю.

А то что расписал ты это дедовский метод.

Спустя 7 минут, 5 секунд (14.04.2012 - 21:17) inpost написал(а):
neitrosha
Кеш хранится на сервере. При изменении данных "администратор добавил пару новостей ", кеш тоже обновляется.

Спустя 9 минут, 47 секунд (14.04.2012 - 21:27) neitrosha написал(а):
>>хранит ли Memcached значение с уникальным ключом «userrow: userid», где userid является некоторым числом. Если кэш не содержит такие данные, сервер сделает запрос к БД, как обычно, и установит уникальный ключ, используя вызов к memcached API.

как понял, получается так: если данные обновились, то мы достаем эти данные из БД, если нет, то делаем достаем страницу из кэша?

Или неверно трактую?

Спустя 31 минута, 25 секунд (14.04.2012 - 21:58) caballero написал(а):
Цитата
как понял, получается так: если данные обновились, то мы достаем эти данные из БД, если нет, то делаем достаем страницу из кэша?

а как ты будешь определять изменились они или нет.
Лично я считаю глупо дублировать данные из БД в мемкеше

Спустя 9 минут, 33 секунды (14.04.2012 - 22:08) inpost написал(а):
caballero
Я из БД вынес в файловый кеш. У меня выборка шла случайных пользователей. Прирост был в 30-40 раз.

neitrosha
Надо не данных, а сформированные блоки кешировать, то есть набор данных. Если в бд в 1 ячейке хранить текст, а потом его перенести в кеш, то ты ничего не выиграешь.
Быстрый ответ:

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