[Решено] как ускорить getPage
Вопрос может очень старый и глупый, но можно ли как то использовать кеш в getPage? Сам сниппет не получится использовать кешированным, но от этого страдает обернутый сниппет (например getResource) и великолепный и скоростной кеш модекса сходит на нет, особенно грустно когда в постраничной разбивке участвуют картинки. Решение нашлось.
Решение:
суть в следующем, надо выставить параметры в таком варианте:
Остался вопрос, что делать при участии нескольких сниппетов в getPage (происходит переопределение кеша), у меня это getResources и Wayfinder, я повесил кеш на первый, потому что в нем вывожу картинки из кеша, что намного весомей, wayfinder и так хорошо работает, но хорошо бы было и его закешировать.
чтоб не было недосказанных вещей, вот как выглядит несколько сниппетов на одной странице для общей пагинации
в кешовых файлах встретил переменную cachePageKey, которая показывает откуда берется кеш, но добавить доп. страницу для другого сниппета не получилось
Решение:
суть в следующем, надо выставить параметры в таком варианте:
&cache=`true`
&cache_key=``
&cache_expires=`31536000`
, где cache_key означает каталог resource/ по умолчанию (его даже можно не выставлять пустым, можно просто упустить), в этом каталоге модекс чистит кеш при добавлении редактировании ресурсов. cache_expires время в секундах, это понятно. Также можно задать свой cache_key, но тогда он не будет участвовать в общем очищении кеша, что и хорошо и плохо. Остался вопрос, что делать при участии нескольких сниппетов в getPage (происходит переопределение кеша), у меня это getResources и Wayfinder, я повесил кеш на первый, потому что в нем вывожу картинки из кеша, что намного весомей, wayfinder и так хорошо работает, но хорошо бы было и его закешировать.
чтоб не было недосказанных вещей, вот как выглядит несколько сниппетов на одной странице для общей пагинации
[[!getPage@myGetPage?
&elementClass=`modSnippet`
&element=`getResources`
&parents=`[[*id]]`
&cache=`true`
&cache_key=``
&cache_expires=`31536000`
]]
[[!getPage@myGetPage?
&elementClass=`modSnippet`
&element=`Wayfinder`
&startId=`[[*id]]`
]]
в кешовых файлах встретил переменную cachePageKey, которая показывает откуда берется кеш, но добавить доп. страницу для другого сниппета не получилось
Комментарии: 7
Ну я не знаю, может стоит документацию почитать?
rtfm.modx.com/display/ADDON/getPage#getPage-CachingProperties
rtfm.modx.com/display/ADDON/getPage#getPage-CachingProperties
да, видел эти строчки, но как использовать эти параментры не понял, могу только тыкать на удачу или продолжать использовать гугл, который пока не дал желаемого
пошел читать про кеш
добавил такие параметры
&cache=`11`
&cache_key=`11`
&cache_expires=`3600`
для теста, увидел, что соответствующие кешевые папочки создаются, но скорости это не дало, что до, что после
решил, решение будет в вопросе, после нескольких тестов
там все нормально и так работает
там, это где?
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.