Как ожил мой замерзший сервер: практика работы с нагрузкой
Среда, 07 января 2026 12:22

Как ожил мой замерзший сервер: практика работы с нагрузкой

Автор
Оцените материал
(1 Голосовать)

Пару месяцев назад я получил тревожное сообщение от мониторинга: на одном из серверов нагрузка CPU превысила 90%. Я подключился и увидел картину — сервер почти не отвечал, команды выполнялись с задержкой. Веб-сайт, который на нем работал, был недоступен. 

Первое, что я сделал — посмотрел процессы: top. Картина была удручающей: один процесс PHP потреблял 95% CPU. Это был скрипт генерации отчетов, который запускался по крону каждые 5 минут. Но почему он вдруг начал грузить систему? Раньше такого не было. 

Я убил процесс (kill -9 PID), чтобы восстановить работу сайта. Потом начал разбираться в причине. Оказалось, в базе данных выросла таблица логов — в ней было больше миллиона записей. Скрипт пытался обработать все за один раз и зависал. 

Я решил проблему несколькими способами. Во-первых, оптимизировал запрос в скрипте, добавив LIMIT и индексы в базу данных. Во-вторых, разбил обработку на части — теперь скрипт обрабатывает по 10 тысяч записей за раз. В-третьих, добавил мониторинг для этого скрипта: если он работает дольше 2 минут, система отправляет мне уведомление. 

Но самый важный урок был в другом. Я научился оперативно определять проблему по нагрузке. Теперь моя стратегия такая: 

Если сервер стал медленным, я сначала смотрю uptime — покажет среднюю нагрузку за 1, 5 и 15 минут. Если цифры высокие, перехожу к top или htop для детального просмотра. Там я вижу, какой именно процесс грузит систему — CPU, память или диск. 

Недавно я столкнулся с похожей проблемой на другом сервере. Там нагрузка была из-за диска. Команда iotop показала, что какой-то процесс активно пишет на диск. Оказалось, это был лог-файл, который разросся до 50 гигабайт. Я очистил его и настроил logrotate для автоматической ротации. 

Для новичков важно понять: нагрузка — это не всегда плохо. Иногда сервер специально нагружают для выполнения тяжелых задач. Ключ в том, чтобы понимать нормальные значения для вашей системы и замечать аномалии. Начните с простого мониторинга — установите htop для удобного просмотра процессов и iotop для отслеживания дисковой активности. Это даст вам контроль над ситуацией.

Прочитано 56 раз Последнее изменение Среда, 07 января 2026 12:29