При работе с базами данных 1С на устаревшем оборудовании, таком как Dell R710 (выпуска 2009 года), администраторы часто сталкиваются с низкой производительностью. В нашей ситуации система выдает 21 балл по тесту Гилева, что находится на грани «Удовлетворительно» и «Хорошо». При наличии 50 активных пользователей и баз объемом до 150 Гб, работающих на связке SQL + 1C на одном физическом сервере, крайне важно выжать максимум из имеющегося железа, если бюджет на покупку нового оборудования не согласован руководством.
Рассмотрим комплексный подход к модернизации и программной настройке системы, чтобы значительно поднять показатели производительности без полной замены сервера.
Проанализируем текущую конфигурацию: установлены два Xeon X5650 с частотой 2.67 GHz. Для 1С критически важна частота на одно ядро, так как многие операции (например, проведение документов) выполняются в один поток. Разберем варианты замены на максимально производительные модели для платформы LGA1366:
Выясним причину, почему это важно: старая архитектура требует высокой частоты для компенсации медленной (по современным меркам) шины памяти DDR3.
Зачастую серверы Dell по умолчанию работают в режимах энергосбережения, что негативно сказывается на времени отклика 1С. Проанализируем необходимые настройки BIOS:
В самой операционной системе Windows Server обязательно выберем схему электропитания «Высокая производительность». В дополнительных параметрах проверим, чтобы минимальное и максимальное состояние процессора было установлено на 100%.
Так как сервер приложений 1С и SQL Server находятся на одной машине с 96 Гб ОЗУ, разберем правила распределения памяти. SQL Server стремится занять всю доступную память, что может привести к «удушению» процессов rphost и вытеснению их в файл подкачки.
Установим жесткое ограничение Max Server Memory. Рекомендуется оставить около 20-25 Гб для нужд ОС и сервера 1С, выделив SQL Server около 70 Гб. Это предотвратит свопирование (swapping).
Рассмотрим настройку Lock Pages in Memory. Эта политика предотвращает выгрузку страниц памяти SQL Server в виртуальную память на диске. Для включения выполним следующие шаги:
gpedit.msc (Редактор локальной групповой политики).Поскольку SQL и 1С на одном сервере, настроим использование протокола Shared Memory в строке подключения. Это исключит лишние накладные расходы на сетевой стек при обмене данными внутри одного сервера.
У пользователя уже имеется RAID 10 на SAS SSD с контроллером H730. Это отличная база, но ее можно улучшить. Разберем работу с базой tempdb. Она активно используется 1С для временных таблиц при сложных расчетах.
Посмотрим на возможность использования RAM-диска. Учитывая 96 Гб оперативной памяти, мы можем выделить 10–12 Гб под виртуальный диск в ОЗУ и перенести туда файлы tempdb. Скорость работы с памятью на порядки выше, чем даже у SSD через старую шину SATA/SAS.
Если использование RAM-диска невозможно, следует разбить tempdb на несколько файлов (по количеству ядер процессора, но обычно не более 8) одинакового размера. Это позволит SQL Server записывать данные в файлы параллельно.
Проанализируем настройки контроллера H730. Убедимся, что включен режим Write Back (запись с кэшированием). Это безопасно только при исправном модуле BBU (батарейке), который у автора темы присутствует.
Для 50-60 пользователей не стоит создавать большое количество рабочих процессов. Рассмотрим оптимальную настройку в консоли администрирования 1С:
Выясним ситуацию с журналом регистрации. Если он занимает много места и активно растет, его стоит перенести на отдельный физический диск, чтобы операции записи в журнал не конкурировали с операциями SQL Server на основном RAID-массиве.
Поскольку пользователи работают через отдельный терминальный сервер, проанализируем взаимодействие между «терминальником» и сервером 1С. В старых серверах Dell сетевые карты Broadcom могут некорректно обрабатывать технологии разгрузки. Попробуем отключить следующие параметры в свойствах сетевого адаптера:
IPv4 Checksum OffloadTCP Checksum OffloadReceive Side Scaling (RSS)Chimney OffloadЭто часто помогает избавиться от микро-зависаний («фризов») интерфейса у пользователей в терминальной сессии.
Соблюдение этих рекомендаций в комплексе позволит поднять балл теста Гилева с 21 до 35–45 даже на оборудовании 2009 года, что обеспечит комфортную работу пользователям еще на год-два до планового обновления парка серверов.