We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 26258
    • 3 Posts
    Здравствуйте!

    В теле сниппета получаю определенный тв-параметр:
    $tvPr = $modx->getTemplateVarOutput(array("picture"), $tvdocid=$value['id'], $published=1);

    модикс на обработку этой строчки тратит в среднем 0,1 секунды. При этом весь остальной огромный блок кода (огромный относительно этой строчки) выполняется в среднем за 0,03 секунды. Все это дело находится в цикле дает в итоге порядка 3-4 секунд.

    Знает ли кто способ оптимизации этой функции?

    За исключением собственных запросов к БД.
      • 785
      • 2,113 Posts
      Quote from: Saty at Apr 13, 2011, 10:42 AM

      Знает ли кто способ оптимизации этой функции?
      За исключением собственных запросов к БД.
      Интересный подход – как можно оптимизировать системную функцию? Если не лезть в код ядра системы, то никак, можно только отказаться от ее использования и самому реализовывать нужный функционал, а тут как раз и понадобятся обращения к базе данных.

      Большое время выполнения, скорее всего, говорит о том, что используются какие-то сложные параметры, то есть не просто текст, а какие-то вычисляемые значения. Упростите параметры, и заработает быстрее.

      Кстати, указывайте используемую версию системы в вопросах на форуме.

        Создание сайтов на MODx, поддержка сайтов, поисковая оптимизация, программирование, копирайтинг
        Статьи о MODx, регулярно новые публикации
        • 9085
        • 630 Posts
        Quote from: Saty at Apr 13, 2011, 10:42 AM


        Знает ли кто способ оптимизации этой функции?

        За исключением собственных запросов к БД.
        Самая оптимальная функция - та, которая не выполняется wink
        Если результат выполнения этой функции, полученный единожды, кэшировать?
        А затем обращаться в кэш. Ну и не забывать его подчищать при обновлении TV =)
          Правильно заданный вопрос повышает вероятность получения нужного ответа.
          Что-то не работает? Загляните в лог ошибок!
          Есть проблема? "Локализуйте" её!
          Ответы на большинство вопросов по MODx | MODx RTFM | API Evo Revo | галопом по Европам Азиям smiley wikibooks(ru) Ditto(en) | Wayfinder e-book | Заметки и о MODx