При развертывании клиент-серверной версии 1С:Предприятие на оборудовании прошлых поколений (например, на базе процессоров Intel Core i7 4-го поколения архитектуры Haswell) перед администратором встает дилемма: использовать современные версии программного обеспечения или довериться проверенным временем, «легким» релизам. Разберем детально, как собрать производительный сервер на базе процессора i7-4770/4790 с 16–32 Гб оперативной памяти и обычных SSD.
Рассмотрим первый и самый важный совет: набивайте память до максимально возможного объема сразу. Для материнских плат этого поколения пределом обычно является 32 Гб RAM (DDR3). В контексте 1С и SQL памяти никогда не бывает много. Если у вас стоит выбор между покупкой более быстрого процессора и увеличением объема ОЗУ до 32 Гб, всегда выбирайте память.
Проанализируем распределение ресурсов: сервер 1С:Предприятия сам по себе потребляет значительный объем (особенно на Управляемых формах), а СУБД SQL Server использует память для кэширования данных (Buffer Pool). Чем больше данных база сможет удержать в оперативной памяти, тем меньше будет обращений к дисковой подсистеме, что критично для старого железа.
Выясним, какая ОС покажет себя лучше на процессоре 4-го поколения. У нас есть три основных пути:
Проанализируем ситуацию с базами данных. Если вы привыкли к стеку Microsoft, то оптимальным выбором для данного железа будет MS SQL Server 2014 SP3 или 2016 SP2. Они менее требовательны к ресурсам, чем версии 2017/2019, но полностью закрывают потребности 1С.
Важный момент касается SQL Express. Многие пытаются сэкономить и использовать бесплатную версию. Посмотрим на её ограничения:
Внимание: именно ограничение памяти в Express-версии является «бутылочным горлышком». Даже если у вас в системе 32 Гб ОЗУ, SQL Express не возьмет больше 1.4 Гб под кэш базы, что приведет к тормозам на тяжелых запросах.
Если же бюджет ограничен, а база большая, рассмотрим PostgreSQL. Но здесь есть нюанс: под Windows PostgreSQL работает несколько медленнее из-за архитектурных особенностей управления процессами. Если вы готовы к экспериментам, лучшим решением будет связка Linux (например, Ubuntu или CentOS) + PostgreSQL (сборка от 1С или Postgres Pro). Это позволит выжать максимум из старого процессора, но потребует навыков администрирования Linux.
Разберем рекомендации по выбору накопителей. Для 1С Сервера и СУБД критична скорость случайного чтения и записи (IOPS). Рядовые бытовые SSD (типа Kingston A400) могут быстро деградировать под нагрузкой SQL-сервера.
На что обратить внимание:
1. Тип памяти: Ищите диски с MLC или качественной 3D NAND.
2. Параметр TBW (Total Bytes Written): Чем он выше, тем дольше проживет диск при постоянной записи логов транзакций SQL.
3. NVMe через переходник: На материнских платах 4-го поколения часто нет слота M.2 NVMe, но есть свободные слоты PCIe. Мы можем использовать переходник PCIe-to-NVMe. Даже если система не сможет с него загрузиться, мы сможем разместить на нем файлы базы данных .mdf и лог .ldf, что даст колоссальный прирост по сравнению с SATA SSD.
Для того чтобы система работала максимально отзывчиво, проанализируем и внедрим следующие настройки:
1. Протокол Shared Memory:
Поскольку сервер 1С и SQL Server у нас находятся на одной физической машине, обязательно включим протокол «Общая память». Это позволит процессам обмениваться данными напрямую, минуя сетевые протоколы. В консоли администрирования 1С в параметрах сервера укажите имя сервера как (local) или ..
2. Настройка электропитания:
В операционной системе Windows обязательно выставим план «Высокая производительность» (High Performance). В BIOS материнской платы отключим функции C-States и Intel SpeedStep. Для i7-4xxx это критично: при низких нагрузках процессор сбрасывает частоту, а при поступлении запроса от 1С тратит миллисекунды на «пробуждение», что пользователь воспринимает как микрофризы.
3. Настройка SQL Server:
Ограничим максимальный объем памяти для SQL Server, чтобы он не «отъел» всё у сервера 1С. Если у нас 32 Гб, выделим SQL серверу порядка 20–22 Гб, оставив остальное под нужды ОС и процессов rphost. Рассмотрим пример настройки через SQL Management Studio:
EXEC sys.sp_configure N'show advanced options', N'1' RECONFIGURE WITH OVERRIDE;
EXEC sys.sp_configure N'max server memory (MB)', N'22528'; -- Ограничение в 22 Гб
RECONFIGURE WITH OVERRIDE;
EXEC sys.sp_configure N'show advanced options', N'0' RECONFIGURE WITH OVERRIDE;
Подводя итог нашему анализу, для процессора i7 4-го поколения и 32 Гб ОЗУ наиболее стабильным и производительным будет следующий стек:
Следуя этим рекомендациям, вы получите стабильную рабочую среду, которая успешно прослужит до момента планового апгрейда на современное серверное оборудование.