Столкнулся с такой проблемой — периодическое замедление работы 1С, причем зависимости от нагрузки или «железа» быстро выявить не получилось.
Тогда была написана эта обработка, которая в цикле (количество итераций меняется), могла выполнять запрос и выводила результат в таблицу для сравнения (по данным можно в Екселе построить диаграмму, чтобы отследить визуально изменения скорости в разные моменты времени).
Прошу не пинать, и не говорить что замеры можно производить и другими способами, я все это знаю.
Обработка была написана под конкретные цели — выловить закономерности в тормозах базы (в какое время база начинает работать медленнее, а когда быстрее), причем я сравнивал таким образом скорость на разных железках и в разное время (день, ночь, выходные). Некоторые результаты честно поразили…
Кроме того обработку можно использовать как аналог замера производительности. Сунул свой запрос проверил сколько выполняется. Поменял снова проверил, запустил один и тот же запрос в разных базах (SQL/DBF). Ну или еще для чего 🙂
Написана под УПП, но если свой запрос — можно на любой конфе открывать (под управляемый формы кому надо сам переделает, мне пока ни к чему)
Из функционала:
— Изменение количества повторов выполнения запроса;
— Прерывание выполнения;
— Выбор типовой запрос (остатки товаров) или произвольный;
— Возможность сохранить результат в файл XLS (файл создаете руками — лень было писать сразу функцию создания, а потом так и не дошли руки);
— Вывод результата в таблицу для анализа и сохранения, либо сохранение результата в файл (если ставите на ночь и есть проблемы с вылетом базы — тогда результат не пропадет);
В общем пользуйтесь, может кому сократит несколько часов жизни на более приятные вещи…
Вы же понимаете, что этим тестируете только время выполнения конкретного запроса, и что оно зависит скорее не от загруженности сервера вцелом, сколько от количества записей в таблицах(е), актуальности статистике по индексам таблиц(ы), структуры индексов, наложенных на таблицы блокировок и т.д.?
Если бы обработка была бы бесплатной, то можно было бы посмотреть на предложенную идею.
Возможно некий смысл в этом есть.
Вопрос к автору:
Чем ваша идея отличается от стандартного «Замера производительности»?
Этот фактор тоже имеет место быть…
Вот элементарный пример — один и тот же запрос в файловой базе выполняется 15 секунд а на sql минуту. Такой обработкой это можно быстро оттестить, поменяв запрос и проверив быстродействие на лету.
Хотя тут конечно теже есть подводные камни 🙂 скорее всего нужно оптимизировать работу самого sql…
Но я к примеру в одной и той же базе получил очень разные результаты на разных серверах, причем мощьность или загруженость не являлась решающим показателем.
Сколько людей столько и мнений (с)
(3) CaptainMorgan, А она платная?
1 еденица внутренней валюты 🙂
иначе как тогда скачивать обработки других авторов?
Ответ на предыдущий вопрос почему то не сохранился.
кратко повторю.
CaptainMorgan — обработка по сути не имеет ни чего общего с замером производительности.
у нее другое назначение — все есть в описании…
И вообще, к чему пустые обсуждения? Есть конкретная идея/предложение/пожелание, давайте обсудим…
А так обсуждение перерастет во флуд.
По-хорошему, параллельно нужно снимать замеры ресурсов и очередей к ресурсам серверов приложений и БД. Тогда картина становится гораздо интереснее.
А если еще вытаскивать информацию dmv с таблиц сервера СУБД — добавляется объем и цвет в такие замеры 🙂