Сравнение производительности 1С в СУБД MS SQL 2022 и PostgreSQL 17 на 500 пользователей

Дата публикации: 18 декабря 2025
Сравнение производительности 1С в СУБД MS SQL 2022 и PostgreSQL 17 на 500 пользователей

Тест 1С: PostgreSQL 17 vs MS SQL 2022 для 500 пользователей. Результаты APDEX и времени выполнения. Анализ виртуализации и standalone. Читайте подробнее в статье.

В начале 2025 года компания 1С обновила свою демо базу ERP. Учитывая последние тенденции к импортозамещению, интересно было проверить:

  • кто быстрее в 2025 году — MS SQL 2022 или PostgreSQL 17.4 в режиме виртуализации и Standalone?

Глава 1. Тестовый стенд

Аппаратная среда

Сервер 1С AMD EPYC 74F3 24/48 3.2 – 4.0 Ghz 512 Gb ECC DDR4 1×7.68 Tb NVME SSD Micron MTFDKCC7T6TFR
Сервер СУБД Intel Xeon Platinum 8260 24/48 2.4 – 3.9 Ghz 256 GB ECC DDR4 1×1.7Tb NVME SSD Samsung MZQL21T9HCJR-00A07
Сеть 10 Gb

Тесты дисковой подсистемы AMD

Рисунок 1 – Производительность дисковой подсистемы сервера 1С (AMD)

Тесты дисковой подсистемы Intel

Рисунок 2 – Производительность дисковой подсистемы сервера СУБД (Intel)

Примечание:

Диски, используемые в тестовом стенде, обладают параметром DWDP = 1. Данные диски подходят для использования в демо стенде, но не подходят для продакшн структуры.

Программная среда

  Виртуальные машины (ВМ) Standalone серверы
ОС Ubuntu Server 24.04 Windows Server 2025 Ubuntu Server 24.04 Windows Server 2025
СУБД PostgreSQL 17.4 MS SQL 2022 PostgreSQL 17.4 MS SQL 2022
Платформа 8.3.27.1507

В качестве системы виртуализации использовалась Hyper-V на базе WIndows Server 2025.

Выделяемые ресурсы для виртуальных машин:

  • Application сервер 1С — 46 ядер, 510 ГБ ОЗУ;
  • MS SQL 2022 сервер — 46 ядер, 250 ГБ ОЗУ;
  • PostgreSQL сервер — 46 ядер, 250 ГБ ОЗУ.

Инструменты тестирования

Название Ссылка Объем базы
Тест-центр База 1С:ERP 2.5.17.117 от 1С https://releases.1c.ru/additional_file?nick=EnterpriseERP20&path=Enterprise20%5cExtrafiles%5cE3K_2.5.17.117.dt 950 Gb
PosgreSQL 17.4 https://www.postgresql.org/

Глава 2. Методика тестирования

В рамках данной статьи применяю методику анализа, используя абсолютные и относительные значения погрешности.

Описание методики определения погрешностей:

  1. определяются идеальные условия испытаний. В нашем случае это аппаратные сервера с ролями сервера 1С и СУБД, объединенные в 10GB сеть;
  2. замер значений:
  • аппаратный сервер 1C (Windows) + аппаратный сервер MS SQL 2022 (Windows), 3 теста (один “прогревочный” для кеширования базы);
  • аппаратный сервер 1C (Windows) + аппаратный сервер PostgreSQL 17.4 (Ubuntu Server 24.04). 3 теста (один “прогревочный” для кеширования базы)

3. Вычисляем значения по формуле абсолютной погрешности и относительной:

Рисунок 3 — Формула оценки абсолютной погрешности

Рисунок 4 — Формула оценки относительной погрешности

Проводим расширенные нагрузочные испытания для понимания предела работы стенда, чтобы избежать наличия “узких” мест:

1. задаем субъективно избыточное число пользователей, для данной связки оборудования — 1500 сеансов;

2. уменьшаем число сеансов, до тех пор, пока показатели времени выполнения и APDEX существенно не уменьшатся при дальнейшем сокращении числа сеансов;

3. начиная с 750 сеансов, показатели существенно не уменьшались при дальнейшем уменьшении числа пользователей;

4. для данной связки я остановился на 500 сеансах 1С.

Проводим замер целевых значений (конфигурация теста APDEX – 500 пользователей):

1. выполняем замер тестов APDEX, используя, связки:

а) ВМ 1C (Windows) + ВМ MS SQL 2022 (Windows);

б) ВМ 1C (Windows) + ВМ PostgreSQL 17.4 (Ubuntu Server)

2. замеряем по одному разу, результаты вносим в таблицу. В таблице указываем два параметра — значение APDEX и время выполнения.

Примечание:

Тест 1C: КИП (APDEX).

В основе методики APDEX лежит набор инструментов 1С КИП. В данном случае использовался весь функционал методологии. Используются стандартная демонстрационная база ERP с сайта 1С.

Стандартная методология APDEX использует прогрессивную шкалу от 0 до 1, где 1 — это замечательный результат, а 0 — неудовлетворительный. Требуется указать целевое значение параметра производительности той или иной операции, создать сценарии и запустить тест.

Шкала оценки APDEX

Шкала APDEX
Значение Оценка
от до
0.00 0.50 неприемлемо
0.50 0.70 очень плохо
0.70 0.85 плохо
0.85 0.94 хорошо
0.94 1.00 отлично

Глава 3. Оптимизации

Оптимизация аппаратной части

Тюнинг процессора AMD

Рисунок 5 — Оптимизация процессора AMD

  1. Advanced – CPU Configuration
    • Global C-State Control – Disabled
    • Local Apic Mode – 2x APIC — Рекомендация AMD
  2. Advanced – NB Configuration
    • Determinism Control – Manual
    • Determinism Slider – Performance — Аналог Max Performance на платах Intel от Supermicro.
    • APBDIS – 1
    • Fixed SOC P-State – P0 Два последних параметра переводят AMD Infinity Fabric (шину) и контроллеры памяти в режим полной мощности и устраняет колебания времени ожидания.
    • DF C-States – Disabled — Отключает энергосберегающий режим для CPU

Для выполнения операций пользовались документом представленном на официальном сайте:

https://www.amd.com/content/dam/amd/en/documents/epyc-technical-docs/tuning-guides/amd-epyc-7003-tg-workload-57011.pdf

В данном документе содержится еще много параметров для тюнинга. В рамках нашей задачи хватило тех, что мы описали выше. Досадно, что такого подробного документа нет для Intel систем.

В результате на процессоре AMD получаем фиксированную в 3.8 ГГц частоту по всем 24 ядрам.

Тюнинг процессора Intel

Рисунок 6 — Оптимизация процессора Intel

Advanced

  • Extended APIC – Enable Для многоядерных CPU настройка обязательна. Иначе при установке роли Hyper-V, число ядер в системе упадет до 1.

Advanced – Advanced power management Configuration

  • Power Technology – Custom
  • Power Performance Tuning – Bios Controls EPB
  • Energy_perf_bias_cfg mode – Maximum Performance
  • CPU P-State Control
    • SpeedStep (P-States) — [Enable]
    • Config TDP — [Normal]
    • EIST PSD Function — [HW_ALL]
    • Turbo Mode — [Enable]
  • Hardware PM State Control
    • Hardware P-States — [Disable]
  • CPU C State Control
    • Autonomous Core C-State: [Disable]
    • CPU C6 report: [Disable]
    • Enhanced Halt State (C1E): [Disable]
  • Package C State Control
    • Package C-State  – [C0/C1 state]
  • CPU T-State Control
    • Software Controlled T-States [Enable]

Не стоит трогать этот режим, если не хотим повредить CPU

В результате на процессоре Intel получаем фиксированную в 3.1 ГГц частоту по всем 24 ядрам.

Часть 3. Оптимизации программной части. MS SQL сервер

Используем материалы с сайта ИТС 1С для тюнинга БД

https://its.1c.ru/db/metod8dev/content/5904/hdoc .

Данных инструкций будет достаточно для базовой настройки SQL сервера.

Часть 4. Оптимизации программной части. PostgreSQL сервер

Используем материалы с сайта ИТС 1С для тюнинга БД

https://its.1c.ru/db/metod8dev#content:5866:hdoc

Опишем основные изменения:

random_page_cost  = 1.1 (для SSD)
effective_io_concurrency = 200
min_wal_size = 4 gb
max_wal_size  = 10 gb

Примечание:

  • отсутствуют правки параметра huge_pages. Дело в том, что на ИТС про эти параметры данных нет, а значит настройки специфические.
  • начиная с версии 16.4, 1С добавила в свою сборку Postgres параметр enable_temp_memory_catalog.

https://dl03.1c.ru/content/AddCompPostgre/17_2_4_1C/postgreUpdate_ru.htm

Параметр новый и, при определенных условиях, обещает ускорить работу с временными таблицами. На ИТС про него информации нет и в сборке от 1С настройка не активна.

Глава 4. Тестирование

Пример окна “Настройки запуска”:

1. Значение APDEX на эталонных серверах с MS SQL

Название Значение APDEX эталонной структуры MS SQL Время выполнения Количество замеров
Тест 1 0.925 1.927 138 297
Тест 2 0.922 1.955 135 219
Тест 3 0.928 1.942 136 298
Среднее значение 0.927 1.941
Относительная погрешность 0.41% 1.79%
Абсолютная погрешность 0.004 0.03

2. Значение APDEX на эталонных серверах с PostgreSQL

Название Значение APDEX эталонной структуры Postgres Время выполнения Количество замеров
Тест 1 0.946 1.689 139 830
Тест 2 0.948 1.652 137 718
Тест 3 0.946 1.633 135 479
Среднее значение 0.947 1.658
Относительная погрешность 0.15% 4.26%
Абсолютная погрешность 0.001 0.071

3. Значение APDEX на виртуальных машин

Название Значения APDEX виртуальных машин Время выполнения Количество замеров
1C (Windows) + MS SQL 2022 (Windows) 0.913 2.214 125 219
1C (Windows) + Postgres 17.4 (Ubuntu Server) 0.936 2.104 129 515

Глава 5. Выводы

Примерно раз в год провожу исследование производительности разных баз данных для 1С. Текущее исследование подтверждает тот факт, что компания 1С движется в сторону глубокой интеграции с PostgreSQL и достигает в этом положительных результатов.

PostgreSQL 17.4 обходит MS SQL по показаниям APDEX и времени выполнения как в режиме виртуализации, так и в Standalone режиме. Причем в Standalone режиме на впечатляющие 17.2%.

Таблица сравнения производительности APDEX и времени выполнения, учитывая погрешности метода:

  Разница
APDEX Время выполнения
ВМ PostgreSQL быстрее на 2.5% PostgreSQL быстрее на 5.2%
Физический сервер PostgreSQL быстрее на 2.2% PostgreSQL быстрее на 17.2%

Интерпретация результатов APDEX

  • APDEX-тест анализирует тысячи параметров и замеров, выдавая усредненную оценку. В данном случае он показывает, что система работает быстро как в виртуализации, так и на физическом сервере.
  • Если нам не требуется измерять большое число параметров системы, то следует использовать параметр “время выполнения”.

Лого ES мини

EFSOL

Заказать звонок

Оставьте свои данные для того, чтобы специалист с вами связался.

*нажимая на кнопку, Вы даете согласие на обработку персональных данных