Стоит ли переходить на БУ сервер старого поколения для SQL и 1С:УПП?

Системный администратор 1С v8.3 (Обычные формы)
← На главную

При выборе серверного оборудования для нужд 1С и SQL Server часто возникает соблазн сэкономить и приобрести бывшее в употреблении железо топового сегмента прошлых лет. В данной статье мы подробно разберем ситуацию, когда компания планирует перейти с виртуальной машины на базе Xeon E5-2690 v2 на физический сервер с двумя процессорами Xeon X5675. Проанализируем, почему высокая тактовая частота старого процессора может быть обманчивой и к каким последствиям это приведет в работе базы 1С:УПП на 80 пользователей.

Архитектурное сравнение: Почему год выпуска имеет значение

Рассмотрим ситуацию с точки зрения производительности на такт (IPC — Instructions Per Cycle). Процессор Xeon X5675 относится к архитектуре Westmere (32-нм), выпущенной в 2011 году. Текущий же процессор автора, Xeon E5-2690 v2, базируется на архитектуре Ivy Bridge (22-нм).

Выясним причину, по которой «старый топ» может проигрывать более современному «середняку»:

  1. Оптимизация конвейера: Каждое новое поколение процессоров Intel привносит улучшения в предсказание ветвлений и работу кеш-памяти. Даже при равной частоте процессор архитектуры Ivy Bridge выполнит на 15–20% больше работы за то же время, чем Westmere.
  2. Наборы инструкций: В старом X5675 отсутствуют инструкции AVX (Advanced Vector Extensions). Несмотря на то, что сама 1С их практически не использует, SQL Server 2017 активно задействует AVX для ускорения сложных аналитических запросов и операций сканирования индексов. Отсутствие этих инструкций на физическом сервере приведет к повышенной нагрузке на CPU при выполнении тяжелых отчетов в УПП.
  3. Шина данных: Платформа LGA1366 (для X5675) ограничена шиной PCI Express 2.0, в то время как LGA2011 поддерживает PCIe 3.0. Это критично при использовании современных контроллеров и накопителей.

Подсистема памяти и её влияние на SQL Server

Проанализируем работу с оперативной памятью, так как SQL Server крайне чувствителен к скорости обмена данными между RAM и CPU. В предложенном варианте планируется установить 128 Гб памяти.

Разберем по шагам технические различия:

В итоге, пропускная способность памяти (Memory Bandwidth) на «новом» сервере будет значительно ниже. Для SQL-сервера, где Buffer Pool постоянно прокачивает гигабайты данных для обработки 80 активных пользователей, это станет узким местом. Мы получим ситуацию, когда процессор будет простаивать в ожидании данных из памяти.

Дисковая подсистема: Главная ловушка

В рассматриваемом сценарии предлагается использовать 4 диска SAS 10k в RAID 10. Посмотрим на цифры производительности, которые мы получим в реальности. Один такой диск выдает в среднем 120–140 IOPS (операций ввода-вывода в секунду).

Проанализируем ситуацию:

  1. Массив RAID 10 из 4-х дисков даст нам суммарно около 250–300 IOPS на запись и около 500 IOPS на чтение.
  2. База УПП объемом 120 Гб при 80 пользователях генерирует интенсивный поток случайного чтения и записи.
  3. Для сравнения: даже бюджетный серверный SSD выдает от 50 000 IOPS.

Важный момент: использование дисков SAS 10k в 2024 году для активной базы 1С — это критическая ошибка. Очередь к дисковой подсистеме будет расти мгновенно, что приведет к «фризам» интерфейса у пользователей при проведении документов, даже если процессоры будут свободны.

Лицензионные ограничения SQL Server 2017 Standard

Разберем ограничения программного обеспечения, упомянутые в обсуждении. Автор планирует использовать SQL Server 2017 Standard.

Нужно учитывать следующие лимиты данной редакции:

Проверка эффективности виртуализации

Существует миф, что отказ от виртуализации («сноси виртуалку к такой-то...») автоматически дает огромный прирост. Рассмотрим реальные цифры: накладные расходы современного гипервизора (ESXi или Hyper-V) составляют обычно не более 3–7% производительности CPU.

Посмотрим на ситуацию комплексно: переход с виртуальной машины на базе E5-2690 v2 на физическое железо X5675 — это попытка выиграть 5% за счет отсутствия гипервизора, потеряв при этом 20–30% на разнице в архитектуре процессоров и еще 50% на скорости памяти. Это явный даунгрейд.

Рекомендации по оптимизации текущей системы

Вместо покупки старого железа, проанализируем, как можно ускорить текущую систему на базе Xeon E5-2690 v2:

  1. Добавление оперативной памяти: Выделение всего 32 Гб под SQL сервер для базы в 120 Гб — это основная причина текущих тормозов. Если увеличить объем выделенной памяти до 128 Гб (максимум для SQL Standard), производительность вырастет в разы за счет того, что данные будут читаться из RAM, а не с дисков.
  2. Переход на SSD: Если база все еще работает на магнитных дисках, установка даже пары зеркальных SSD (RAID 1) даст колоссальный эффект, несопоставимый с заменой процессора.
  3. Настройка SQL: Проверьте параметры Max Degree of Parallelism (MAXDOP) и Cost Threshold for Parallelism. Для 1С часто рекомендуют устанавливать MAXDOP равным 1 или 4 в зависимости от специфики нагрузки.

Ниже приведем пример скрипта для проверки текущих настроек памяти SQL Server, чтобы понимать, сколько ресурсов реально потребляет система:


SELECT 
    physical_memory_in_use_kb/1024 AS Memory_used_by_SQL_MB, 
    (total_physical_memory_kb - available_physical_memory_kb)/1024 AS Total_used_by_OS_MB,
    memory_utilization_percentage
FROM sys.dm_os_process_memory;

Вывод

Проанализировав ситуацию, мы пришли к выводу, что покупка сервера на базе Xeon X5675 является нецелесообразной. Несмотря на "физическое" исполнение без виртуализации, устаревшая архитектура, медленная память и катастрофически медленные диски SAS 10k сделают работу пользователей 1С:УПП медленнее, чем на текущем оборудовании при его правильной настройке.

← На главную