pdoMenu и кеширование
Задался вопросом по pdoMenu и кешированию.
Что будет если сделать кешированный вызов с данными параметрами, какое ускорение работы?
Есть ли толк от 3-х минутного кеширования при таком вызове?
Пример вызова:
Что будет если сделать кешированный вызов с данными параметрами, какое ускорение работы?
Есть ли толк от 3-х минутного кеширования при таком вызове?
Пример вызова:
[[pdoMenu?
&cache=`1`
&cacheTime=`180`
&fastMode=`1`
...
Комментарии: 13
В чем смысл подобных вопросов?
Замерь скорость загрузки страницы с кэшированием и без. Сравни. Сделай выводы.
Замерь скорость загрузки страницы с кэшированием и без. Сравни. Сделай выводы.
Мне интересен принцип взаимодействия параметров и кешированного вызова м.б. это бессмыслица.
Каких параметров? Какого взаимодействия?
Кэшированный сниппет выполняется один раз и сохраняется в кэш. Второй раз не выполняется, пока кэш не будет очищен. Некэшированный выполняется каждый раз при загрузке страницы.
Какие, блин, могут быть вопросы?
Кэшированный сниппет выполняется один раз и сохраняется в кэш. Второй раз не выполняется, пока кэш не будет очищен. Некэшированный выполняется каждый раз при загрузке страницы.
Какие, блин, могут быть вопросы?
Не злись, все хорошо =)
Исходя из логики эти параметры будут работать только при вызове некешированного сниппета. Просто сниппет будет брать данные не из БД, а из кэша.
Да, вот я не мог этого понять, ну как бы логично, но странно, раз есть параметры и такое сочетание… меня это и смутило.
Получается невозможно взять и закешировать меню разом на всех страницах?
Ведь когда меню не маленькое, оно требует времени, а если сразу закешировать его и далее метить активное js'ом, то можно выиграть не мало времени.
Получается невозможно взять и закешировать меню разом на всех страницах?
Ведь когда меню не маленькое, оно требует времени, а если сразу закешировать его и далее метить активное js'ом, то можно выиграть не мало времени.
Получается невозможно взять и закешировать меню разом на всех страницах?Почему нельзя, можно. Вызываешь кэшированный сниппет pdoMenu и все.
Да можно даже и не кэшированный
[[!pdoMenu?
&cache=`1`
&cacheTime=`180`
&fastMode=`1`
...
Сниппет будет тянуть меню не из базы, а из массива-кэша (со второго раза). Что тоже очень быстро. Но для главного меню, которое редко меняется, лучше первый вариант. Я использую именно его
[[pdoMenu ...]]
У каждой страницы будет свой кэш. Товарищ же хочет что бы был общий)
Для этого нужно вызывать так
[[!pdoMenu?
&cache=`1`
&cacheTime=`180`
&fastMode=`1`
...
Не внимательно читаешь )
А что делает fastMode? в доках ни слова об этом параметре
Да, точно
Можно. Сниппет menuCaching это умеет делать.
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.