Инструментальный пакет для «1С:Предприятие»
В условиях роста сложности систем, реализуемых на базе платформы «1С:Предприятие», проблема их оптимизации уже давно весьма актуальна. Отвечая на эти потребности заказчиков и партнеров, фирма «1С» (www.1c.ru) выпустила весной новый продукт — «1С:Корпоративный инструментальный пакет» (1С:КИП), включающий два основных инструмента — «1С:Тест-Центр» (1С:ТЦ) и «1С:Центр управления производительностью» (1С:ЦУП).
Нужно отметить, что до сих пор «1С» продавала как коммерческие продукты (речь идет о ПО семейства «1С:Предприятие») только прикладные решения для пользователей. В состав этих пакетов входили и средства разработки, но как отдельные продукты они не распространялись. Кажется, 1С:КИП стал первым коммерческим продуктом из разряда инструментария — он предназначен не для пользователей, а для ИТ-специалистов, занимающихся разработкой, внедрением и сопровождением прикладных решений (как в компаниях-партнерах, так и в ИТ-подразделениях заказчика).
Основное назначение 1С:КИП — анализ производительности прикладных решений, выявление возможных проблем и корректировка приложения с целью его оптимизации. Это нужно при разработке, внедрении и сопровождении достаточно крупных (корпоративных) информационных систем, характеризующихся большой нагрузкой по запросам, с большим количеством рабочих мест.
Общая логика использования 1С:КИП такова. Эксперт с помощью 1С:ТЦ и 1C:ЦУП собирает данные о показателях производительности прикладной системы на платформе «1С:Предприятие». Нагрузка при этом может создаваться автоматически программами-имитаторами (при помощи сценариев тестирования) либо реальными пользователями. На основании полученной информации проводится оценка текущей работоспособности системы. Если обнаружены проблемы производительности, то эксперт при помощи 1С:ЦУП собирает дополнительную (аналитическую) информацию об узких местах системы. На основании этих сведений и рекомендаций, приведенных в руководстве по использованию инструментального пакета, можно оптимизировать систему, изменив программный код приложения и/или структуру метаданных.
Продукт 1С:ТЦ предназначен для автоматизации многопользовательских нагрузочных испытаний без участия реальных пользователей. Соответственно он нужен для исследования прикладной системы в тестовом варианте (а не в режиме ее эксплуатации), в том числе на этапе разработки. Это желательно делать и при создании заказных решений, но еще важнее — для оптимизации тиражных продуктов корпоративного назначения. С помощью 1С:ТЦ можно оценивать:
- производительность системы при заданных параметрах модели предприятия — с целью выяснить, применимо ли предлагаемое решение для конкретного заказчика, выбрать оборудование или сформулировать эксплуатационные требования;
- масштабируемость системы при изменении объема базы данных, количества одновременно работающих пользователей, общей нагрузки на систему;
- изменение производительности системы при изменении любых условий ее эксплуатации (например, при коррекции функциональности или состава оборудования).
Применение тест-центра позволяет также выявлять проблемы, возникающие только при многопользовательской работе (конфликты блокировок и т. п.).
Помимо собственно инструментов (программ-имитаторов виртуальных пользователей и средств замера и визуализации показателей производительности) в состав продукта входит такой важный компонент, как готовые сценарии тестирования — модернизированный вариант универсального сценария «Эмуляция работы пользователей по вводу документов» и новый сценарий «Продажи в системе «Управление производственным предприятием».
Однако пакет 1С:ТЦ позволяет решить лишь часть задач оптимизации ПО: организовать автоматическое нагрузочное тестирование и выявить потенциальные проблемы приложений. Для исследования систем, работающих в «боевом режиме», предназначен второй компонент инструментального комплекса — 1С:ЦУП (но его можно применять и в случае эмуляции нагрузки с помощью 1С:ТЦ). Он представляет собой специализированное приложение на базе «1С:Предприятие», для его применения не требуется никаких изменений в коде исследуемого прикладного решения или платформы «1С:Предприятие».
1С:ЦУП работает в двух режимах: мониторинга текущего состояния системы и анализа проблем производительности на основе собранных данных. В первом режиме он обеспечивает визуальную оценку текущего состояния системы в реальном времени, запись и хранение исторической информации о производительности системы, анализ сохраненных данных за произвольный период времени.
Во втором режиме анализируются проблемы производительности системы с привязкой к особенностям платформы. С помощью этого инструмента эксперты теперь могут не только узнать о том, что в системе имеются проблемы производительности, но и найти их причины и определить способы устранения, ответив на следующие вопросы:
- Какие проблемы производительности имеются в системе и насколько они серьезны?
- Какие проблемы следует решать в первую очередь?
- В чем конкретно заключается каждая проблема?
- Какие объекты метаданных и строки кода конфигурации следует оптимизировать для того, чтобы решить данную проблему?
Чтобы получить ответы на эти вопросы, 1С:ЦУП автоматически решает три основные задачи: собирает полную информацию по всем проблемам производительности, восстанавливает полный контекст каждой проблемы, т. е. «привязывает» ее к определенным строкам кода конфигурации и объектам метаданных, и автоматически ранжирует проблемы, располагая их в порядке убывания влияния на общую производительность системы.
Собирая информацию о проблемах, 1С:ЦУП «привязывает» каждую проблему к строкам кода приложения и объектам метаданных — ее «источникам». При отображении проблем эксперт получает картину происходящего в системе с другой точки зрения: программа показывает источники проблем, автоматически сортируя их по убыванию значимости проблем, которые с ними связаны. Руководство по использованию продукта содержит инструкции по анализу и оптимизации кода и структуры исследуемого прикладного решения.