Top.Mail.Ru
КОНФИГУРАТОР Серверы ▶
Сетевое оборудование ▶
СХД ▶
IP-телефоны IP-камеры Источники бесперебойного питания (ИБП) Комплектующие Готовые решения Серверы под задачу
О компании Купить в лизинг Блог Отзывы Доставка Гарантия Контакты Работа у нас Реквизиты Спецпредложения Игровые ПК на ISKRAPC Заявка в тех поддержку
Эксперты в подборе IT-оборудования

Настройка сервера для сайта: железо, ОС и оптимизация

5 октября 2026
Настройка сервера для сайта: железо, ОС и оптимизация

Знакомая ситуация: купили мощный сервер для сайта, а он работает медленнее, чем у конкурента на скромном VPS за 500 рублей. Магия? Нет, просто кто-то потратил пару часов на правильную настройку, а кто-то решил, что установка Ubuntu и Apache по умолчанию — это достаточно. Если сайт - это магазин с каталогом, корзиной и обменом с 1С, требования к железу другие: про сервер для интернет-магазина у нас есть отдельная статья.

Вот вам цифра для размышления: неоптимизированные настройки могут снижать производительность сервера на 40-60%. То есть вы фактически используете только половину мощности, за которую платите. При этом для базовой оптимизации нужно изменить всего несколько десятков параметров — если знать, какие именно.

Железная логика выбора компонентов

Начнём с основ, но не будем рассказывать очевидное про "чем больше ядер, тем лучше". Реальность интереснее: для большинства сайтов критична не многопоточность процессора, а его частота на ядро и размер кэша. WordPress с кучей плагинов будет быстрее работать на 4-ядерном процессоре с частотой 3.5 ГГц, чем на 16-ядерном с 2.2 ГГц. Почему? Потому что PHP по умолчанию однопоточный, и каждый запрос обрабатывается одним ядром.

С оперативной памятью проще — её много не бывает. Но есть нюанс: для веб-сервера важнее иметь запас RAM для кэширования, чем выделять огромные лимиты процессам. Типичная ошибка — выставить Apache MaxRequestWorkers на 500, когда памяти хватает только на 150. Результат предсказуем: сервер уходит в своп и начинает безбожно тормозить.

Компонент Для блога/лендинга Для интернет-магазина Для highload-проекта
CPU 2-4 ядра, 2.5+ ГГц 4-8 ядер, 3.0+ ГГц 8-16 ядер, 3.5+ ГГц
RAM 4-8 ГБ 16-32 ГБ 64+ ГБ
Диск SSD 50-100 ГБ SSD NVMe 200-500 ГБ SSD NVMe RAID 10
Сеть 100 Мбит/с 500 Мбит/с - 1 Гбит/с 10 Гбит/с

SSD ускоряет работу базы данных в 10-15 раз по сравнению с HDD. Это самый простой апгрейд с максимальной отдачей.

Про диски отдельный разговор. SSD — это уже не роскошь, а необходимость. Но если выбираете между SSD на 1 ТБ и NVMe на 256 ГБ — берите NVMe. Скорость случайного чтения/записи, которая критична для баз данных, у NVMe в разы выше. А место можно докупить отдельным диском под бэкапы и статику.

Операционная система: развеиваем мифы

Спойлер: для 95% задач подойдёт Ubuntu Server LTS или Rocky Linux (наследник CentOS). Всё остальное — либо специфические требования, либо личные предпочтения администратора.

Ubuntu удобна тем, что под неё написано больше всего мануалов и готовых скриптов. Нужно поставить какой-нибудь экзотический софт? Скорее всего, найдёте PPA-репозиторий. Rocky Linux выбирают те, кто ценит стабильность и предсказуемость — обновления там выходят реже, но они тщательно протестированы.

Windows Server имеет смысл только если у вас ASP.NET приложение или специфический корпоративный софт. Во всех остальных случаях это лишние расходы на лицензию и ресурсы — Windows требует примерно на 30% больше RAM для тех же задач.

После установки ОС первым делом обновляем ядро и отключаем всё лишнее. Например, если у вас нет графического интерфейса (а на сервере он не нужен), можно отключить множество служб, связанных с аудио, Bluetooth, печатью. Освободится пара сотен мегабайт RAM — мелочь, но приятно.

Танцы с веб-серверами

Вечный спор Apache vs Nginx решается просто: используйте оба. Nginx как фронтенд для статики и проксирования, Apache как бэкенд для обработки PHP. Такая связка даёт преимущества обоих серверов: Nginx молниеносно отдаёт картинки и CSS, Apache корректно обрабатывает .htaccess и модули.

Базовая настройка Nginx для работы в связке выглядит примерно так: worker_processes ставим по количеству ядер CPU, worker_connections — 1024 умножить на количество ядер. Включаем gzip_static для предварительно сжатых файлов и настраиваем кэширование статики на год вперёд — браузеры будут благодарны.

В Apache критически важно правильно выбрать MPM (Multi-Processing Module). Для большинства случаев подойдёт mpm_event — он экономнее расходует память, чем prefork, и стабильнее worker. Параметр KeepAliveTimeout ставим на 2-3 секунды — достаточно для загрузки ресурсов страницы, но не слишком долго, чтобы не держать соединения зря.

Тонкая настройка: выжимаем максимум

Теперь самое интересное — инструменты, о которых знают не все. Tuned — это демон для автоматической оптимизации системы под разные профили нагрузки. Установили, выбрали профиль throughput-performance для веб-сервера, и система сама подкрутит десятки параметров ядра, планировщика, энергосбережения.

Cpufreq позволяет управлять частотой процессора. По умолчанию многие серверы работают в режиме ondemand — процессор повышает частоту при нагрузке. Звучит логично, но для веб-сервера лучше performance — максимальная частота постоянно. Да, потребление энергии выше, зато нет задержек на переключение частот.

Профиль performance в cpufreq может снизить время отклика сервера на 10-20% без изменения железа.

Параметры ядра Linux — отдельная вселенная. Вот несколько самых важных для веб-сервера:

  • net.core.somaxconn = 65535 — увеличиваем очередь входящих соединений
  • net.ipv4.tcp_fin_timeout = 10 — быстрее закрываем соединения
  • vm.swappiness = 10 — используем своп только в крайнем случае

Эти настройки прописываются в /etc/sysctl.conf и применяются командой sysctl -p. Результат — сервер начинает обрабатывать больше одновременных соединений и быстрее освобождает ресурсы.

Кэширование: секретное оружие производительности

Кэш — это как телепорт для данных. Вместо того чтобы каждый раз генериÑ