Тестирование проводилось с целью оценки масштабируемости прикладного решения «1С: Полиграфия» при одновременной работе большого количества пользователей.
При проведении теста применялись общепринятые подходы к оценке производительности корпоративных информационных систем:
Условия тестирования
Оборудование
Программное обеспечение
Методика тестирования
Показатели производительности
В процессе тестирования измерялись значения следующих показателей производительности:
Результаты тестирования
Объем информации, обрабатываемый системой в единицу времени
По результатам тестирования была построена диаграмма зависимости количества документов, обрабатываемых системой в единицу времени, от количества одновременно работающих тестовых пользователей:
Из диаграммы видно, что объем информации, обрабатываемой системой, равномерно увеличивается с ростом количества одновременно работающих тестовых пользователей, то есть растет пропорционально создаваемой нагрузке. Количество обработанных документов практически не зависит от объема документа. Характер зависимости говорит о том, что система справляется с данной нагрузкой, и не достигла насыщения (предела пропускной способности), то есть при дальнейшем росте количества пользователей, объем информации, обрабатываемой системой в единицу времени, будет возрастать.
Следует заметить, что в ходе тестирования тестовые пользователи вводили данные с интенсивностью, существенно превышающей показатели работы реальных пользователей. При одновременной работе 150 тестовых пользователей с документами, объемом 40 строк, каждый из них в среднем ввел 51.3 документа или 2052 строки документа в час, что значительно превышает нагрузку, создаваемую реальными пользователями.
Рассмотрим эту же зависимость в пересчете на строки документа:
При максимальной нагрузке, смоделированной в данном тесте (150 тестовых пользователей, 40 строчные документы), система обработала более 300000 строк документов в час.
Пересчитаем данные этой диаграммы на одного тестового пользователя:
Из диаграммы видно, что при увеличении количества тестовых пользователей, объем информации, обрабатываемый каждым из них, уменьшается незначительно. Этот факт так же говорит о том, что система не достигла насыщения, то есть при дальнейшем росте количества пользователей, общий объем информации, обрабатываемой системой в единицу времени, будет возрастать.
Время записи и проведения документа
По результатам тестирования была построена диаграмма зависимости среднего времени записи и проведения документа от количества одновременно работающих пользователей для документов различного объема:
Среднее время записи и проведения документа возрастает при увеличении количества одновременно работающих пользователей. Увеличение времени записи и проведения документа объясняется блокировками при параллельной работе с конкурентными наборами данных, увеличением нагрузки на все программные и аппаратные компоненты системы, а так же ростом накладных расходов, связанных с обслуживанием большего количества пользователей. При данных условиях тестирования среднее время записи и проведения документа ни в одном тесте не превысило 10 секунд.
Следует учитывать, что данный показатель не соотносится напрямую с объемом информации, обработанной одним тестовым пользователем в единицу времени, а показывает только среднее время, затраченное на запись и проведение каждого документа (то есть не учитывает паузу между вводом документов).
Влияние конкурентности на производительность системы
Для оценки влияния конкурентности на производительность и масштабируемость системы были проведены аналогичные тесты для полностью неконкурентных наборов товаров.
По результатам тестирования была построена диаграмма зависимости времени обработки (записи и проведения) одного документа от количества одновременно работающих тестовых пользователей для конкурентных и неконкурентных наборов данных:
Из графика видно, что конкурентность наборов данных увеличивает время записи и проведения одного документа. Это замедление оказывается тем заметнее, чем больше нагрузка на систему. Увеличение среднего времени записи и проведения документа связано с появлением блокировок ресурсов, которые неизбежны при конкурирующих наборах данных.
В ходе тестирования проводился контроль блокировок на уровне SQL сервера. Во всех тестах на неконкурентных наборах данных задержки, связанные с блокировками ресурсов, полностью отсутствовали, то есть тестовые пользователи не блокировали друг друга. Таким образом, система продемонстрировала полностью параллельную работу при непересекающихся наборах данных. При тестировании на конкурентных наборах, то есть при пересечении документов по товарным позициям, система накладывала блокировки, соответствующие требованиям бизнес-логики.
Следует так же отметить, что во время тестирования на конкурентных наборах данных не наблюдалось конфликтов взаимной блокировки (deadlock).
Выводы
мы свяжемся с Вами в ближайшее время.
Оставьте свои данные и мы свяжемся с Вами в ближайшее время.