We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 11255
    • 193 Posts
    Даже не знаю куда и писать grin
    У нашей конторы есть сайт(*). Мне сказали переделать кое-что в комметариях. И еще сказали что сайт часто становится недоступен.
    Буквально недавно переделывал вывод на другом нашем сайте, потому что на некоторых страницах было по 400 запросов к БД. При посещаемости до 1000 человек в сутки это была большая нагрузка на сервер майскула и , естественно, он "падал". Я переделал. Стало 60-80 запросов. Нужно делать дальше, но это уже не настолько срочно. Сайт работает нормально (в плане не падает сервак).

    Так вот. Сегодня поставил тайминг на (*) и ужаснулся shocked. На одной странице вывода всех документов (с ихними комментами и рейтингами) одной категории - 1215 запросов к БД shocked. Зачем же? smiley)) Сейчас буду садится и писать свой вывод на страницу.

    Эта тема не вопрос, это - просто ужас от увиденного. Вот что могут сделать стандартные сниппеты модикса сделать с простеньким сайтом smiley))
      • 36823
      • 334 Posts
      Даже интересно. Простенький сайт это какой? Да и сложно, по моему мнению, стандартными сниппетами так извратиться, с простеньким сайтом.
        • 11255
        • 193 Posts
        Quote from: Andrei at Oct 14, 2009, 07:12 AM

        Даже интересно. Простенький сайт это какой? Да и сложно, по моему мнению, стандартными сниппетами так извратиться, с простеньким сайтом.
        есть категории: новости, пиццерии, доставка пиццы, интересное о пицце, рецепты, статьи.
        в каждой категории есть свои документы (по 40-80). и все smiley
        вывод, скажем, пиццерий: дитто, в шаблоне дитто вызываются цсс_рейтинг, 2 раза сниппет comments (один раз что бы посчитать количество комментариев, второй - показать последний коммент). походу все smiley
        в основном шаблоне: вывод последних комментов, 5 лучших доставок (по рейтингу) и 5 лучших пиццерий, последние новости, топ статей, опрос.
        вроде все smiley)

        может я что-то не понимаю, но по-моему 1215 запросов к БД для такой структуры это уж слишком много smiley
          • 11255
          • 193 Posts
          Итог дня.
          Написав свой вызов (только основной части, элементы дизайна не трогал (там всякие блоки топ-статей и т.п.)) я получаю сдедующие результаты:

          Было:
          Запросов: 1215 Время запросов: 2.5295 s Время парсинга: 7.8678 s Сурс: database Полное время: 10.3974 s

          Стало:
          Запросов: 89 Время запросов: 0.1546 s Время парсинга: 4.6628 s Сурс: database Полное время: 4.8174 s
          а с кэшированием:
          з кешем Запросов: 78 Время запросов: 0.0425 s Время парсинга: 0.2207 s Сурс: cache Полное время: 0.2632 s

          8) вроде бы неплохо я сегодня поработал smiley
          • Quote from: Great-Antique at Oct 14, 2009, 02:49 PM

            Было:
            Запросов: 1215 Время запросов: 2.5295 s Время парсинга: 7.8678 s Сурс: database Полное время: 10.3974 s

            Стало:
            Запросов: 89 Время запросов: 0.1546 s Время парсинга: 4.6628 s Сурс: database Полное время: 4.8174 s
            а с кэшированием:
            з кешем Запросов: 78 Время запросов: 0.0425 s Время парсинга: 0.2207 s Сурс: cache Полное время: 0.2632 s
            Ну и ну ))) Не, ну конечно, 89 запросов - это копейки по сравнению с 1215 запросами... Но и 89 запросов для нормального сайта - это крайне много, тем более, если с кешем их становится всего на десяток меньше. Вобщем, есть еще над чем поработать smiley
              Разработка сайтов и программных модулей на MODX.
              Опыт работы на MODx с 2005 года. Высокое качество.
              Компания Baltic Design Colors: http://www.bdcolors.ru.
              • 32773
              • 118 Posts
              Quote from: Great-Antique at Oct 14, 2009, 02:49 PM

              Итог дня.
              Написав свой вызов (только основной части, элементы дизайна не трогал (там всякие блоки топ-статей и т.п.)) я получаю сдедующие результаты:
              Что имеется в виду, написали свой снипет? Тоже очень интересуюсь вопросами оптимизации запросов к БД.
                • 11255
                • 193 Posts
                Quote from: Fuzzy at Oct 14, 2009, 07:39 PM

                Ну и ну ))) Не, ну конечно, 89 запросов - это копейки по сравнению с 1215 запросами... Но и 89 запросов для нормального сайта - это крайне много, тем более, если с кешем их становится всего на десяток меньше. Вобщем, есть еще над чем поработать smiley
                Тут дело в том, что я оптимизировал только вывод основного содержимого (каталога), а все блоки типа топ-статей, последние новости и т.п. я не трогал. В итоге у меня для вывода содержимого идет 3 запроса (при чем я так понимаю что 2 это запросы к Базе для нахождения самого кода сниппета), а с кешированием вообще 0 smiley) т.е. все запросы - это то что я еще не трогал smiley так что работать есть над чем и, что хорошо, известно над чем smiley

                Quote from: x3m4ik at Oct 15, 2009, 05:25 AM

                Что имеется в виду, написали свой снипет? Тоже очень интересуюсь вопросами оптимизации запросов к БД.
                Я написал свой сниппет, который одним запросом берет все необходимые данные для вывода (пейджтитл, айди, рейтинг, последний коммент, его автор, айди коммента) из всех необходимых таблиц, и записывает их в один массив, который я уже с помощью PHP разбираю как мне нужно и формирую HTML.
                  • 1477
                  • 515 Posts
                  Quote from: Great-Antique at Oct 14, 2009, 06:51 AM

                  Вот что могут сделать стандартные сниппеты модикса сделать с простеньким сайтом smiley))
                  Это явно не сниппеты сделали, а чьи-то кривые руки wink.
                    Shopkeeper - сниппет и модуль для создания интернет-магазина.
                    TVimageResizer - плагин для изменения размеров (а также наложения водяных знаков и скругления углов) картинок TV при создании документа.
                    PickDocsInTree - плагин для выбора документов из дерева.
                    Paykeeper 1.5 - Сниппет для онлайн-оплаты в интернет-магазине MODx + Shopkeeper (Webmoney и Robokassa).
                    • 36823
                    • 334 Posts
                    По своему опыту скажу, переделывать (оптимизировать) вывод данных приходилось в нескольких случаях. При не оправданной вложенности стандартных сниппетов, замене стандартных сниппетов, самописными, которые почем зря дёргали базу в цикле.