Минимальное время жизни кэша

Главные вкладки

Аватар пользователя Ritka Ritka 12 августа в 21:10

Всем привет! Я долгое время не обращала внимание на стандартный кэш друпал, но решила убедиться! Так вот там есть - Минимальное время жизни кэша (Кэшированные данные не будут обновляться до истечения выбранного периода.) - то есть, если у меня установлено 5 минут Минимальное время жизни кэша, то кэш будет очищаться каждые 5 минут независимо от того, произошли ли изменения, или кэш очистится только тогда, когда произошли изменения в контенте, блоке итд... ?

Лучший ответ

Аватар пользователя bsyomov bsyomov 13 августа в 10:54

Ну нет. Тут правильнее всего сказать инвалидироваться, но важно не это.

Смысл в том, что закешированные данные будут неизменны минимум 5 минут, даже если данные на основе которых построен кеш уже изменились. Так делается, чтобы не перестраивать кеш слишком часто, и таким образом, снизить нагрузку, если нет необходимости прям самые свежие данные отдавать клиенту. Если данные не менялись, кеш может и дольше жить, но не меньше.

Комментарии

Аватар пользователя bsyomov bsyomov 13 августа в 0:45

Кеш не будет перестраиваться чаще чем раз в 5 минут, даже если будут изменения. Собственно там же написано прямо об этом.

Аватар пользователя bsyomov bsyomov 13 августа в 10:54

Ну нет. Тут правильнее всего сказать инвалидироваться, но важно не это.

Смысл в том, что закешированные данные будут неизменны минимум 5 минут, даже если данные на основе которых построен кеш уже изменились. Так делается, чтобы не перестраивать кеш слишком часто, и таким образом, снизить нагрузку, если нет необходимости прям самые свежие данные отдавать клиенту. Если данные не менялись, кеш может и дольше жить, но не меньше.

Аватар пользователя Ritka Ritka 13 августа в 11:43

Я поставила модуль Cache Lifetime Options и настроила минимальную жизнь кэша 1 неделю, а максимальную год, и нагрузка резко упала! РАДУЕТ, что кому то в голову пришло такой модуль написать!

Аватар пользователя Ritka Ritka 13 августа в 15:17

Еще возник вопрос на счет кэша в модуле views в самих блоках (где страницы views там все понятно), так вот в блоках есть кэширование по времени запросе и вывода – это понятно, а вот есть еще кэширование блока и там есть глобальное кэширование, по страницам итд... - вопрос, если в блоке выключить кэширование блока и оставить кэширование по времени запроса и вывода, надо потом включать кэширование блока?
(вопрос идет о глобальном кэшировании блока, кэширование по страницам и пользователям - это понятно)