Как уменьшить колличество запросов и время загрузк
Здравствуйте, приобрел debugParser, информация:
Total parse time 1.8005221 s
Total queries 148
Total queries time 0.1623292 s
Memory peak usage 3,75 Mb
Приложил неколько самых ресурсоемких запросов:
По скриншоту они ресурсоемки, но на деле на сайте всего 3 категории в которых всего 11 материалов + Главная страница, все они выводятся в [[$menu]] и [[$responsive-menu]] почему столько запросов к БД и столько тратится времени на эти и другие запросы?
Total parse time 1.8005221 s
Total queries 148
Total queries time 0.1623292 s
Memory peak usage 3,75 Mb
Приложил неколько самых ресурсоемких запросов:
По скриншоту они ресурсоемки, но на деле на сайте всего 3 категории в которых всего 11 материалов + Главная страница, все они выводятся в [[$menu]] и [[$responsive-menu]] почему столько запросов к БД и столько тратится времени на эти и другие запросы?
Комментарии: 8
Много запросов из-за TV наверняка. Но не так уж и много времени на них тратится. (10%)
P.S. Переходите на pdoTools docs.modx.pro/components/pdotools/
P.S. Переходите на pdoTools docs.modx.pro/components/pdotools/
Убрать includeTVs и processTVs, либо оставить там только то, что действительно нужно. А вообще pdoTools и pdoResources оттуда действительно быстрее
ммм ок подумаю в сторону pdoTools
а по [[$menu]] что скажете там то конструкция простенькая:
[[Wayfinder? &startId=`0` &level=`2` &rowTpl=`menu-color`]]
откуда там 30 запросов к БД? и почему запрос почти на 0.2с?
а по [[$menu]] что скажете там то конструкция простенькая:
[[Wayfinder? &startId=`0` &level=`2` &rowTpl=`menu-color`]]
откуда там 30 запросов к БД? и почему запрос почти на 0.2с?
В отличии от pdoTools, стандартные дополнения не заморачиваются с количеством запросов вообще.
Например Wayfinder выбирает отдельным запросом каждую ветку меню, а getResources получает отдельными запросами каждый ТВ параметр.
На 0.2 сек не запрос, а рендер результатов. Это напрямую зависит от сложности чанка, используемых в нём фильтров и вложенных сниппетов.
Например Wayfinder выбирает отдельным запросом каждую ветку меню, а getResources получает отдельными запросами каждый ТВ параметр.
На 0.2 сек не запрос, а рендер результатов. Это напрямую зависит от сложности чанка, используемых в нём фильтров и вложенных сниппетов.
Весь чанк [[$menu]]:
<header>
<div class="header-container">
<div class="top-header">
<a href="[[++site_url]]"><img class="logo" src="/assets/templates/images/logo.png" alt="[[++site_name]]"></a>
<!-- Navigation Menu -->
<nav id="myjquerymenu" class="jquerycssmenu">
[[Wayfinder? &startId=`0` &level=`2` &rowTpl=`menu-color`]]
</nav>
</div>
</div>
</header>
Чанк menu-color:<li class="first [[+menu-color]]"><a href="[[+wf.link]]" title="[[+wf.title]]" [[+wf.classes]]>[[+wf.linktext]]</a>[[+wf.wrapper]]</li>
Вроде конструкции не замороченные, может скажете куда копать?
Для начала просто замени Wayfinder на pdoMenu, должно заработать с теми же параметрами.
Тоже самое и с getResources на pdoResources, только вместо &includeTVs=`1` нужно будет прописать список: &includeTVs=`tv1,tv2,tv3`.
Думаю, разницу сразу заметишь.
Тоже самое и с getResources на pdoResources, только вместо &includeTVs=`1` нужно будет прописать список: &includeTVs=`tv1,tv2,tv3`.
Думаю, разницу сразу заметишь.
Переделываю шаблон и чанки под pdoTools, первое впечатление положительное, попутно возникло 2 вопроса:
1) может с помощью pdoTools можно избавиться от стороннего HitsPage?(http://hitspage.artdevue.com/ru/)
Искал аналоги, и в итоге все равно на нем и остался.
2) вывожу с помощью pdoResources — 10 блоков новостей, может можно как то реализовать вставку рекламного (произвольного небольшого кода) скажем после 5 новости, а после рекламного блока продолжился бы вывод оставшихся 5 новостей?
1) может с помощью pdoTools можно избавиться от стороннего HitsPage?(http://hitspage.artdevue.com/ru/)
Искал аналоги, и в итоге все равно на нем и остался.
2) вывожу с помощью pdoResources — 10 блоков новостей, может можно как то реализовать вставку рекламного (произвольного небольшого кода) скажем после 5 новости, а после рекламного блока продолжился бы вывод оставшихся 5 новостей?
1. В pdoTools подобного сниппета нет. Подсчет просмотров ресурсов есть в Tickets, но не думаю, что его стоит использовать только для этого.
2. docs.modx.pro/components/pdotools/general-settings#Параметры-шаблонов — просто укажи специальный чанк в параметре &tpl_n5=``
2. docs.modx.pro/components/pdotools/general-settings#Параметры-шаблонов — просто укажи специальный чанк в параметре &tpl_n5=``
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.