Поиск нагрузки на сервере VPS/VDS

Если вы обнаружили, что сайт внезапно начал тормозить, то возможно причиной тому является нагрузка на сервере. Нагрузка может быть связана как с несоответствием потребляемых ресурсов выбранному тарифу, так и с атакой на сайт. Рассмотрим основные способы диагностики.

Главным инструментом в этом деле является команда:

top

Программа top показывает состояние системы в реальном времени. Для запуска подключитесь к серверу по SSH, выполните команду:

top

и нажмите Enter.

В верхней части отображается информация о загрузке системы:

В нижней части — список запущенных процессов:

Load Average

Load Average — это среднее значение загрузки системы за период времени. Три числа показывают нагрузку за последние 1, 5 и 15 минут.

Значение 0 означает отсутствие нагрузки, значение 1 — полную загрузку одного ядра. Для оценки необходимо учитывать количество ядер процессора.

Параметры CPU

Строка CPU показывает распределение нагрузки:

  • us — нагрузка пользовательских процессов
  • sy — нагрузка системных процессов
  • ni — процессы с измененным приоритетом
  • id — простой процессора
  • wa — ожидание ввода/вывода
  • hi — аппаратные прерывания
  • si — программные прерывания
  • st — время, отданное гипервизору

Анализ нагрузки

Нагрузка CPU (sy, us, ni)

Высокие значения этих параметров говорят о высокой загрузке процессора. В этом случае следует посмотреть процессы по столбцу %CPU и при необходимости оптимизировать их или увеличить ресурсы сервера.

Нагрузка ввода-вывода (wa)

Высокие значения wa и Load Average могут свидетельствовать о проблемах с дисковой системой или сетью.

Состояния процессов

Основные состояния процессов в Linux:

  • D — ожидание ввода/вывода
  • R — активный процесс
  • S — ожидание события
  • T — приостановленный процесс
  • Z — завершенный процесс (зомби)

Для просмотра процессов используйте команду:

ps aux

Для поиска процессов в состоянии D выполните:

ps aux | grep D
Вопросы и ответы
Команда top отображает загрузку системы, использование CPU, память и список активных процессов в реальном времени.
Это средняя нагрузка на систему за 1, 5 и 15 минут.
Это время ожидания ввода-вывода, которое может указывать на проблемы с диском или сетью.
Нужно отсортировать процессы по %CPU в выводе команды top или использовать ps aux.
Рекомендуемые статьи
Поиск вирусов и уязвимостей на сайте
Поиск вирусов на VPS/VDS