График : Пн-Пт: 9.30 - 18.00


Производительность и масштабируемость 1С:Предприятия 8.1

Масштабируемость 1С Предприятия 8 предполагает уменьшение зависимости производительности системы от внешней нагрузки (числа одновременно работающих пользователей, оформляемой документации и объема хранимых данных). Иными словами, масштабируемость означает более высокую производительность системы при том же уровне нагрузки.

Факторы, влияющие на производительность программ 1C

На производительность программ 1с шказывает влияние целый спектр факторов. Основные из них:

Способ работы с информационной базой - клиент-серверный или файловый.

Число одновременно работающих пользователей. При работе одновременно до 11 пользователей – допустим файловый вариант работы, более 11 – клиент-серверный (PostgreSQL или MSSQLServer).

Объем информационной базы. При расширении информационной базы необходимо перейти на клиент-серверный способ работы. Кроме того, для увеличения производительности 1с рекомендуется применять дисковую подсистему на сервере информационной базы данных FC или SAS.

Пропускная способность локальной вычислительной сети. Необходимую производительность обеспечивает класс 100Mbit и выше.

Характеристики аппаратной части сервера и рабочего места пользователя.

Цели тестирования

Одной из задач, которые решались при разработке 1С:Предприятия 8.1, являлось повышение производительности и масштабируемости системы. При этом учитывался опыт использования 1С:Предприятия 8 на больших внедрениях и результаты многочисленных нагрузочных испытаний системы в различных режимах.

Проведенная работа включала в себя как оптимизацию уже существующих механизмов платформы, так и реализацию новых возможностей, направленных на повышение производительности и масштабируемости системы.

В частности, была проведена оптимизация:

Работы встроенного языка

Внутренней параллельности сервера 1С:Предприятия

Обмена данными между клиентом и сервером 1С:Предприятия

Алгоритмов записи движений документов

Кроме того была значительно переработана архитектура системы в клиент-серверном варианте работы – реализован кластер серверов 1С:Предприятия, использование которого позволяет распределить нагрузку между несколькими серверными рабочими процессами (в том числе расположенными на различных компьютерах) и таким образом повысить общую масштабируемость системы.

Настоящее тестирование 1c проводилось с целью оценки достигнутых показателей производительности и масштабируемости 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С:Предприятие 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С:Предприятия 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

Параметры оборудования:

  • Сервер 1С:Предприятия:
    • Процессор: 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С:Предприятия позволяет распределять нагрузку между несколькими рабочими процессами и таким образом значительно увеличивает масштабируемость системы.
  • Возросла скорость выполнения операций в однопользовательском режиме и одновременно уменьшились требования к объему оперативной памяти клиентского компьютера.
Нашли ошибку на сайте? Напишите о ней нам!
Наверх Обратный звонок