Показать сообщение отдельно
Старый 09.12.2013, 17:02   #43
Ивано++
Senior Member
 
Аватар для Ивано++
 
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
По умолчанию

Цитата:
Сообщение от dmartynenko Посмотреть сообщение
Если можно ходить по страницам одного плагина, и другого независимо. И при этом запоминаются обе позиции. То есть плагины учитывают piVars друг друга, то получиться 15 * 25 возможных вариантов записей в кэше со списками. Или вы открываете single одного плагина, и при этом остается виден список другого с постраничной навигацией.

Это не совсем реальный случай конечно.

Но вот более реальный.

Берем список tt_news + плагин календаря к нему + список категорий tt_news на той же странице. Календарь может генерировать очень большое число страниц сам по себе - отдельная страница на каждый день + на каждый месяц. Категории служат фильтрами внутри дня, месяца - поэтому в piVars категории добавляется дата. Получаем на каждый день у нас число уникальных url (страниц) равно числу категорий. Плюс возможная постраничная навигация внутри всего этого.

Тут тоже не совсем то, но дело плохо. При таком варианте забьется и кэш страниц, и внутренний (если делать через него), и кэш RealURL. Оптимальное решение в таком случае - вообще не кэшировать. И не давать поисковикам индексировать все этого. Так как уникального контента в этих тысячах страниц 0%.
Т.е. получается примерно

Плагин А)
tt_news[detail] = 1-1000
tt_news[page_number] = 1-10
tt_news[page_number] = 1-10 &(+) tt_news[detail] = 1-1000
tt_news[calendar_data] = 10-10-2010 &(+) tt_news[page_number] = 1-10 &(+) tt_news[detail] = 1-1000
и все это суммируется

Плагин Б)
аналогично...

Да... так получается очень много.
Тогда ясно о чем речь.

Ну решение (может быть):
1) кэшировать в другие таблицы, скажем как это делает tt_news (в его cf_tt_news_cache) - хотя если на всем сайте (caching framework) - перевести на другой дравйвер, например Memcache - то не вижу смысла плодить кэш-таблицы cf_***...
2) кэш можно вырубать скажем на тех стран которые с большой долей вероятности не будут посещены пользователем... Например
- а) календари старых дат (кэшируем только тридцать последних 90 дней - к примеру, а то и меньше),
- б) page_number > 10
- в) news_detail > 100

--
И все кэша уже не будет так много.
А по этим страницам всеравно будут ходить больше всех наверное боты.
__________________
Иван Литовченко
http://iv-litovchenko.ru/
Ивано++ вне форума   Ответить с цитированием