Производительность и масштабируемость
1С:Предприятия 8.1
Цели тестирования
Одной из задач, которые решались при разработке 1С:Предприятия
8.1, являлось повышение производительности и масштабируемости
системы. При этом учитывался опыт использования 1С:Предприятия 8 на
больших внедрениях и результаты многочисленных нагрузочных испытаний
системы в различных режимах.
Проведенная работа включала в себя как оптимизацию уже
существующих механизмов платформы, так и реализацию новых
возможностей, направленных на повышение производительности и
масштабируемости системы.
В частности, была проведена оптимизация:
- Работы встроенного языка
- Внутренней параллельности сервера 1С:Предприятия
- Обмена данными между клиентом и сервером 1С:Предприятия
- Алгоритмов записи движений документов
Кроме того была значительно переработана архитектура системы в
клиент-серверном варианте работы – реализован кластер серверов
1С:Предприятия, использование которого позволяет распределить
нагрузку между несколькими серверными рабочими процессами (в том
числе расположенными на различных компьютерах) и таким образом
повысить общую масштабируемость системы.
Настоящее тестирование проводилось с целью оценки достигнутых
показателей производительности и масштабируемости 1С:Предприятия 8.1
в различных условиях.
Были проведены следующие тесты:
- Оценка производительности и масштабируемости системы при
одновременной работе большого количества пользователей
- Оценка производительности и масштабируемости системы при
пиковых нагрузках
- Оценка производительности на отдельных видах операций
Полученные показатели 1С:Предприятия 8.1 сравнивались с
аналогичными показателями для 1С:Предприятия 8.
Тестирование проводилось на оборудовании, параметры
производительности которого являются на сегодняшний день достаточно
типичными для крупных внедрений.
Общие результаты тестирования
1С:Предприятие 8.1 продемонстрировало значительное улучшение
показателей производительности на всех проведенных тестах.
|
Тест |
Улучшение (раз) |
|
Масштабируемость при работе большого количества
пользователей |
|
Общая пропускная способность системы |
до 1.5 |
|
Масштабируемость при пиковых нагрузках |
|
Общая пропускная способность системы |
до 2.3 |
|
Время проведения документа |
до 2.4 |
|
Масштабируемость в кластере при пиковых нагрузках |
|
Общая пропускная способность системы |
до 3.8 |
|
Время проведения документа |
до 3.8 |
|
Показатели производительности на отдельных
операциях |
|
Запись и проведение документа |
до 1.6 |
|
Перепроведение документа |
до 1.8 |
|
Запуск 1С:Предприятия |
до 4 |
|
Объем занимаемой оперативной памяти |
до 1.4 |
Ниже дано подробное описание условий тестирования и результатов
по каждому тесту.
Производительность и масштабируемость при
одновременной работе большого количества пользователей
В данном тесте оценивалась масштабируемость системы при
одновременной работе большого количества пользователей, то есть ее
способность справляться с поступающим объемом информации за
приемлемое время.
При заданных условиях тестирования
1С:Предприятие 8.1 продемонстрировало значительное улучшение
показателей производительности и масштабируемости по сравнению с
1С:Предприятием 8. Так пропускная способность системы при
одновременной работе 200 пользователей выросла
почти в 1.5 раза, а время записи и проведения
документа составило менее 3.5 секунд.
При этом система на платформе 1С:Предприятие 8.1 не достигла
насыщения и демонстрирует устойчивую тенденцию к дальнейшему росту
общей пропускной способности при увеличении числа одновременно
работающих пользователей.
Условия тестирования
Тестирование проводилось на примере документа
РеализацияТоваровУслуг типовой конфигурации УПП 1.2. При помощи
1С:ТестЦентра был описан многопользовательский сценарий тестирования
со следующими параметрами:
- Количество одновременно работающих пользователей: от 1 до 200
- Выполняемая операция: создание и проведение нового документа
РеализацияТоваровУслуг
- Количество строк в табличной части «Товары»: 20
- Каждый тестовый пользователь создает документы со своим
уникальным набором товаров, то есть все движения документов
записываются параллельно, не приводя к блокировкам.
- Количество строк в табличной части «Услуги»: 0
- Пользователи вводят документы с паузой 60 секунд
- Расчет себестоимости списываемых товаров не производится (в
выбранном режиме используется механизм регламентного расчета
себестоимости).
Следует отметить, что смоделированная нагрузка на систему
значительно превышает нагрузку, которая наблюдается в реальных
условиях. По результатам опроса обычный пользователь вводит в
среднем 300 строк документа в час. В данном тесте при одновременной
работе 200 пользователей на 1С:Предприятии 8.1 тестовый пользователь
вводил 965 строк в час, то есть интенсивность его работы была выше в
3.2 раза.
Во время проведения документа система выполняла следующие
действия:
- Движения по разделам управленческого учета:
- Взаиморасчеты с контрагентами: увеличение фактической
задолженности контрагента
- Продажи: увеличение объема продаж по предприятию
- Списание товара со склада предприятия с контролем
достаточности остатка товаров
- Снятие резерва, выполненного под заказ покупателя с
контролем достаточности резерва
- Движения по разделам регламентированного учета
- Списание товара принадлежащего организации с контролем
достаточности остатка товаров
- Расчеты с контрагентами: увеличение оперативной
задолженности контрагента
- Отражение списания товаров для целей партионного учета
- Движения по разделам бухгалтерского и налогового учета:
- Движения по регистрам подсистемы НДС
- Формирование проводок по бухгалтерскому и налоговому учету:
- По выручке (бухгалтерский и налоговый учет)
- По НДС (бухгалтерский учет)
- По взаиморасчетам (бухгалтерский учет)
- По суммовым разницам (бухгалтерский и налоговый учет)
- По курсовым разницам (бухгалтерский учет)
При проведении тестирования измерялись следующие показатели
производительности:
- Фактическая пропускная способность системы – количество строк
документов, обработанных системой в единицу времени.
- Среднее время записи и проведения одного документа
Тестирование проводилось на следующем тестовом стенде:
- Сервер 1С:Предприятия:
- Процессоры: 2 * Intel Xeon MP, 2800 МГц
- Оперативная память: 4 096 Мб
- Дисковая подсистема: 2 * Ultra320 SCSI RAID 0 (stripe)
- Сервер MS SQL 2000 SP4:
- Процессоры: 2 * DualCore Intel Xeon, 2666 МГц
- Оперативная память: 8 192 Мб
- Дисковая подсистема: 6 дисков в режиме Ultra320 SCSI RAID 0
(stripe)
Результаты
Масштабируемость системы характеризуется объемом информации,
которая может быть обработана системой в единицу времени. При
увеличении количества одновременно работающих пользователей, объем
обработанной информации должен пропорционально возрастать при
сохранении приемлемого времени выполнения операции. То есть, система
должна справляться с растущей нагрузкой.
Рассмотрим диаграмму зависимости количества строк документов,
обрабатываемых системой в единицу времени, от количества
одновременно работающих тестовых пользователей для 1С:Предприятия 8
и 8.1:
 При одновременной работе 200 тестовых пользователей на
данном тесте пропускная способность системы на платформе
1С:Предприятие 8.1 составила более 190 000 строк
документов в час, что почти в 1.5 раза выше
соответствующего показателя для 1С:Предприятия 8.
1С:Предприятие 8.1 уверенно справляется с этой нагрузкой и не
достигает предела общей пропускной способности при данных условиях
тестирования. Система демонстрирует устойчивую тенденцию к
дальнейшему росту общей пропускной способности при увеличении
количества одновременно работающих пользователей.
Рассмотрим эту же зависимость в пересчете на одного тестового
пользователя системы – диаграмму относительной пропускной
способности.
 При увеличении количества одновременно работающих
пользователей в 10 раз (с 20 до 200) относительная пропускная
способность системы на платформе 1С:Предприятие 8.1 уменьшается
всего на 4.6%. То есть, подключение к системе новых
пользователей практически не отражается на общей производительности
системы.
Другим важным показателем производительности
является среднее время записи и проведения документа. При увеличении
количества одновременно работающих пользователей это время должно
оставаться в приемлемых пределах для того, чтобы обеспечить
комфортную работу пользователей системы и соответствие требованиям
бизнес-процессов автоматизируемого предприятия.
Рассмотрим
диаграмму зависимости среднего времени записи и проведения документа
от количества одновременно работающих тестовых пользователей для
1С:Предприятия 8 и 8.1:
 При одновременной работе 200 тестовых пользователей на
данном тесте среднее время записи и проведения одного документа
составило 3.47 секунды.
Таким образом, 1С:Предприятие 8.1 демонстрирует значительно
лучшую масштабируемость по сравнению с предыдущей версией на тесте с
параллельным вводом документов большим количеством
пользователей.
Производительность и масштабируемость при пиковых
нагрузках
В данном тесте оценивалась работа системы в режиме пиковых
нагрузок. Интенсивность работы тестовых пользователей в заданных
условиях значительно превышает возможности реальных пользователей.
Однако именно такое тестирование позволяет наиболее наглядно оценить
результаты оптимизации, а так же эффект от использования новых
возможностей платформы.
В условиях пиковой нагрузки 1С:Предприятие 8.1 продемонстрировало
значительное улучшение показателей производительности по сравнению с
1С:Предприятием 8. Пропускная способность системы выросла в
2.3 раза, а среднее время проведения одного
документа сократилось в 2.4 раза.
С точки зрения повышения масштабируемости крайне важно иметь
возможность распределять нагрузку в системе. В 1С:Предприятии 8
можно было распределять нагрузку между клиентами и сервером
предприятия. В версии 8.1 к этому добавилась возможность
распределения нагрузки между несколькими рабочими процессами
1С:Предприятия - в том числе, находящимися на разных компьютерах
сети.
Для оценки эффекта от использования кластера серверов,
тестирование в условиях пиковой нагрузки было проведено для кластера
из 2-х рабочих процессов 1С:Предприятия 8.1, расположенных на разных
компьютерах. В этом тесте пропускная способность системы на
платформе 8.1 по сравнению с 8 выросла в 3.8 раз, а
время проведения документа сократилось во столько же.
Условия тестирования
Тестирование проводилось на примере документа
РеализацияТоваровУслуг типовой конфигурации УПП 1.2. Параметры
данного теста были идентичны предыдущему за следующими
исключениями:
- Количество одновременно работающих пользователей: 20
- Пользователи вводят документы без паузы
- Количество строк в табличной части «Товары»: 5
Тестирование проводилось на следующем тестовом стенде:
- Сервер 1С:Предприятия (для работы без кластера и для процесса
1 в кластере):
- Процессор: DualCore Intel Xeon MP, 3000 МГц
- Оперативная память: 8 192 Мб
- Дисковая подсистема: 4 * Ultra320 SCSI RAID 0 (stripe)
- Сервер 1С:Предприятия (для процесса 2 в кластере):
- Процессор: 2 * Intel Xeon MP, 2800 МГц
- Оперативная память: 8 192 Мб
- Дисковая подсистема: 8 * Ultra320 SCSI RAID 0 (stripe)
- Сервер MS SQL 2000 SP4:
- Процессоры: 2 * DualCore Intel Xeon, 2666 МГц
- Оперативная память: 8 192 Мб
- Дисковая подсистема: 6 дисков в режиме Ultra320 SCSI RAID 0
(stripe)
Результаты
Тестирование системы на пиковых режимах позволяет оценить ее
работоспособность и производительность в ситуации резкого увеличения
нагрузки до предельных значений. Хорошо мастабируемая система в
таких условиях должна демонстрировать устойчивую работу и приемлемое
время выполнения операций.
Рассмотрим диаграмму фактической пропускной способности системы
(строк документов в час) при использовании 1С:Предприятия 8,
1С:Предприятия 8.1 без использования кластера и 1С:Предприятия 8.1 с
использованием кластера из 2 рабочих процессов.
|
Пропускная способность (строк в
час) |
Улучшение (раз) |
|
8 |
28656 |
|
|
8.1 |
65376 |
2.28 |
|
8.1 (кластер) |
109692 |
3.83 |

При заданных условиях тестирования 1С:Предприятие 8.1
демонстрирует увеличение пропускной способности по сравнению с 8 в
2.3 раза (без кластера) и в 3.8
раз при использовании кластера из двух рабочих процессов, запущенных
на разных компьютерах.
Важным показателем масштабируемости системы является время
выполнения операций в условиях пиковых нагрузок. Рассмотрим
диаграмму среднего времени записи и проведения одного документа для
1С:Предприятия 8, 1С:Предприятия 8.1 без использования кластера и
1С:Предприятия 8.1 с использованием кластера из 2 рабочих
процессов.
|
Время записи и проведения документа
(сек.) |
Разница с 8 (раз) |
|
8 |
11.81 |
|
|
8.1 |
4.84 |
2.44 |
|
8.1 (кластер) |
3.10 |
3.81 |

При заданных условиях тестирования 1С:Предприятие 8.1
демонстрирует увеличение производительности по сравнению с 8 в
2.4 раза (без кластера) и в 4.3
раза при использовании кластера из двух рабочих процессов,
запущенных на разных компьютерах. В последнем случае среднее время
записи и проведения одного документа составляет всего
2.76 секунды.
Таким образом, 1С:Предприятие 8.1 демонстрирует значительно
лучшие показатели производительности и масштабируемости по сравнению
с предыдущей версией на тестировании при пиковых нагрузках.
Производительность на отдельных видах операций
При разработке новой версии 1С:Предприятия была проделана работа
по оптимизации многих механизмов и алгоритмов платформы,
направленная на улучшение производительности системы и комфортности
работы пользователей. Для оценки эффекта от оптимизации было
проведено тестирование производительности на отдельных операциях в
однопользовательском режиме.
Проведение и перепроведение документа
Тест проводился с целью оценки производительности новой версии
платформы на операциях проведения и перепроведения документов в
однопользовательском режиме. На данном тесте 1С:Предприятие 8.1
демонстрирует прирост производительности в 1.6 –
1.8 раза по сравнению с 1С:Предприятием 8.
Тестирование проводилось на примере документа
РеализацияТоваровУслуг типовой конфигурации УПП 1.2. Параметры
данного теста были идентичны предыдущему за следующими
исключениями:
- Количество одновременно работающих пользователей: 1.
- Количество строк в табличной части «Товары»: 40
Параметры оборудования:
- Процессор: DualCore Intel Xeon MP, 3000 МГц
- Оперативная память: 8 192 Мб
- Дисковая подсистема: 4 * Ultra320 SCSI RAID 0 (stripe)
- Сервер MS SQL 2000 SP4:
- Процессоры: 2 * DualCore Intel Xeon, 2666 МГц
- Оперативная память: 8 192 Мб
- Дисковая подсистема: 6 * Ultra320 SCSI RAID 0 (stripe)
Рассмотрим диаграмму среднего времени проведения и перепроведения
документа для 1С:Предприятия 8 и 1С:Предприятия 8.1
|
Действие |
Время проведения
документа |
Улучшение (раз) |
|
8 |
8.1 |
|
Запись и проведение документа |
3.08 |
1.75 |
1.76 |
|
Перепроведение документа |
3.28 |
2.08 |
1.58 |

Работа с конфигурацией
При разработке 1С:Предприятия 8.1 был оптимизирован алгоритм
загрузки конфигурации, что позволило существенно снизить время
запуска приложения, а так же уменьшить объем оперативной памяти,
занимаемой 1С:Предприятием. С целью оценки эффекта от оптимизации
был проведен настоящий тест.
Во время тестирования измерялось время запуска 1С:Предприятия с
использованием типовой конфигурации УПП 1.2 в клиент-серверном
варианте, а так же объем оперативной памяти, занимаемой загруженным
приложением. Измерения проводились для версий 8 и 8.1.
Время запуска приложения УПП на 1С:Предприятии 8.1 уменьшилось в
1.3 раза для первого пользователя (во время первого
запуска происходит кэширование конфигурации) и в 4
раза для всех остальных пользователей.
Параметры оборудования (сервер 1С:Предприятия, сервер MS SQL и
клиент 1С:Предприятия расположены на одном компьютере):
- Процессор: P4 3.6 ГГц
- Оперативная память: 2 Гб
- Дисковая подсистема: IDE, 120 Гб
|
Операция |
Время (сек.) |
Разница (раз) |
|
8 |
8.1 |
|
Запуск первого пользователя |
35.00 |
27.00 |
1.30 |
|
Запуск остальных пользователей |
20.00 |
5.00 |
4.00 |
Объем оперативной памяти замерялся после выполнения следующих
действий:
- Было запущено 1С:Предприятие
- Открыта форма документа РеализациТоваровУслуг
- Документ был перепроведен
Объем оперативной памяти, занятой 1С:Предприятием 8.1 уменьшился
в 1.4 раза по сравнению с версией 8.
|
Занимаемая память (Мб) |
Разница (раз) |
|
8 |
201.53 |
|
|
8.1 |
143.25 |
1.41 |

Выводы
1С:Предприятие 8.1 демонстрирует значительное улучшение
показателей производительности и масштабируемости по сравнению с
версией 8:
- Улучшились показатели производительности и масштабируемости
системы при одновременной работе большого количества пользователей
- Улучшились показатели работы системы в условиях пиковых
нагрузок
- Использование кластера серверов 1С:Предприятия позволяет
распределять нагрузку между несколькими рабочими процессами и
таким образом значительно увеличивает масштабируемость системы.
- Возросла скорость выполнения операций в однопользовательском
режиме и одновременно уменьшились требования к объему оперативной
памяти клиентского компьютера.
|