![]() |
Форум больше не используется. Присоединяйтесь к каналу #community-ru в Slack for TYPO3 community |
|
![]() |
#1 |
Senior Member
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
|
![]()
Ну пока из наблюдений - что мне показалось в отличие от файлов - это то что запись в memcache - как-то быстрее происходит....
![]() |
![]() |
![]() |
![]() |
#2 |
Senior Member
|
![]()
Как раз "при добавлении" - это самый хитрый момент в чистке кэшей.
Обычно как: вывели список новостей, закэшировали, в качестве тэгов использовали id-шники новостей. Соответственно при изменении или удалении (скрытии) новости одновременно сбрасываем кэши по "тэгу id-шнику". А новая новость еще ни с какими кэшами-тэгами не связана! Так что сбрасывать? PS: На тестовой машине, когда кэшей мало считывание из файла и из memcached, ИМХО, может быть одинаковым по времени. Так как обращение к файлам ОС + ФС кэширует в памяти, и получается по сути то же самое. А вот в реальной жизни, когда кэшей много, всю ФС в память не поместишь и разница будет. |
![]() |
![]() |
![]() |
#3 | |
Senior Member
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
|
![]() Цитата:
В этом нет ничего плохого... С memcache - конечно лучше стало (имею в виду, то что удалось поставить на memcache)... И это заметно даже на не большой проекте. Единственное проблема с которой столкнулся при использовании memcache - это на основе чего генерировать уникальный ключ кэша - что бы разрешить запись кэша? На основе id-страницы - не подходит На основе useCacheHash - также не подходит В обоих случаях пользователь может ввести id=xxxx - и будет создан кэш + 1... И таким образом будет насоздано куча всяких "несущесвующих" кэшей. А с тэгами ищу решение... |
|
![]() |
![]() |
![]() |
#4 | |
Senior Member
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
|
![]() Цитата:
Ищу тэги для memcache... ![]() Последний раз редактировалось Ивано++; 01.10.2013 в 11:04 |
|
![]() |
![]() |
![]() |
#5 |
Senior Member
|
![]()
В общем случае ключ в кэше должен учитывать все что у вас может повлиять на содержимое. Т.е. id страницы, текущий type, GET переменные, содержимое config и т.п. И еще место откуда вызывается.
Примерно так PHP код:
|
![]() |
![]() |
![]() |
#6 | ||
Senior Member
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
|
![]() Цитата:
1. вот человек ввел id=5005034 (у нас движок выдаст 404 - ошибку) - сам просчитает, т.к. такой страницы нет, и для type - тоже самое а вот если мы используем показ новостей к примеру по additionalparams для typolink - пример tx_news[id]=50 получается если человек от "себя" введет не верный id-записи, то у Вас запишется кэш +1 - которого в принципе не существует. И так до тех пор, пока он (злоумышленник-вредитель) не устанет вводить разные значения - одним словом так и сайт можно "завалить".... Получается как - каждый раз проверять на существоание такого ID, и если есть, то разрешаем писать кэш? Как проверить валидность id-записи? 2. вот мое наблюдение по работе ядра системы: если у нас запрашивается не верная страница по id, type - то typo3 в кэш ничего не пишет - здесь вродебы все ясно... но вот как она проверяет additionalparams, в т.ч. useCachHash - что это валидный url? Как я не старался - все равно она лишних кэшей никаких не пишет... Даже useCachHash = FALSE Цитата:
|
||
![]() |
![]() |
![]() |
#7 | |
Senior Member
|
![]()
С левыми id проблем не вижу.
Вы же делаете как: 1. Строите cache_key 2. Проверяете в кэше 3. Если нет, то делаете запрос в БД 4. Если нет записи - выдаете 404 5. Если есть в БД, формируете контент и пишете в кэш Логично что ответы 404 в кэш писать не нужно. Цитата:
|
|
![]() |
![]() |
![]() |
#8 | ||
Senior Member
Регистрация: 18.01.2013
Адрес: Russia , Moscow
Сообщений: 796
|
![]() Цитата:
Возможно нашел решение - более простое - по поводу разрешить/запретить кэширование - но оно связанно с useCashHash - и не знаю насколько оно будет уместно ... И сейчас не совсем пойму - почему useCashHash так плох? Цитата:
PHP код:
|
||
![]() |
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Cлишком сложно показалось? | carlos | Вопросы выбора CMS | 5 | 04.07.2007 16:37 |