Задать вопрос
Все статьи / VDS / Диагностика и исправление неполадок / Контроль нагрузки и процессов: top, htop
Найти результаты:
Период:
с:
 
по:
Помощь в поиске

Помощь в поиске

apple banana
Найти записи, которые содержат хотя бы одно из двух слов.

+apple +juice
Найти записи, которые содержат оба слова.

+apple macintosh
Найти записи, которые содержат слово 'apple', но положение записей выше, если они также содержат 'macintosh'.

+apple -macintosh
Найти записи, которые содержат слово 'apple', но не 'macintosh'.

+apple ~macintosh
Найти записи, которые содержат слово 'apple', но если запись также содержит слово 'macintosh', rate it lower than if row does not. Это более "мягкий" чем поиск '+apple -macintosh', для которого наличие 'macintosh' вызывает что записи не будут возвращены вовсе.

+apple +(>turnover <strudel)
Найти записи, которые содержат слова 'apple' и 'turnover', или 'apple' и 'strudel' (в любом порядке), но ранг 'apple turnover' выше чем 'apple strudel'.

apple*
Найти записи, которые содержат такие слова как 'apple', 'apples', 'applesauce', или 'applet'.

"some words"
Найти записи, которые содержат точную фразу 'some words' (например записи содержащие 'some words of wisdom', но не "some noise words").

Контроль нагрузки и процессов: top, htop

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

Проанализировать нагрузку, которую создают процессы, можно с помощью специальных утилит:  top или htop. Работа с htop может быть удобнее благодаря интерактивности; top предустановлена во всех дистрибутивах Linux и не требует отдельной установки.

При медленной работе сайта дополнительно рекомендуется воспользоваться сервисом PageSpeed Insights от Google, который анализирует скорость загрузки страниц и дает рекомендации по оптимизации работы сайта.

Также можно попытаться оптимизировать работу сайта переносом каталога временных файлов MySQL в tmpfs.

Top

Утилита top предустановлена в UNIX-системах, поэтому для запуска  достаточно подключиться к серверу по SSH и выполнить команду top.

Вывод утилиты выглядит следующим образом:

  • Вверху выводится информация о системе, ниже - список процессов.
  • Вывод обновляется каждые 2 секунды.
  • Процессы, оказывающие самую большую нагрузку на процессор, будут выведены вверху списка.

Сведения о системе

Слева вверху указано текущее время системы, далее:

  • Up - время работы системы с последнего запуска
  • User - количество текущих пользователей.
  • Load average - средняя нагрузка на сервер: отображаются значения за одну, пять и 15 минут назад.
  • Tasks - общее количество запущенных процессов в разных статусах (running - выполняемые; sleeping - в ожидании; stopped - остановленные; zombie - "зомби", дочерние процессы, ожидающие завершения родительского процесса).
  • Cpu(s) - процент времени процессора, затраченного на выполнение процессов, в том числе:
    us - пользовательские процессы (высокое значение данного показателя может указывать, в том числе, на ошибки в коде сайта, необходимость его оптимизации);
    sy - процессы ядра;
    id - неиспользуемые ресурсы (чем выше этот показатель, тем лучше);
    wa - операции ввода/вывода, т.е. дисковые операции.
  • Mem, Swap - сведения об использовании оперативной памяти (total - общий объем, free - объем свободной памяти, used - объем использованной памяти).

Сведения о процессах

По умолчанию процессы выстроены в таблице по размеру нагрузки на процессор - от большего к меньшему.

Обозначения столбцов:

  • PID - идентификатор процесса;
  • USER - пользователь, запустивший процесс;
  • PR - приоритет процесса;
  • NI - измененный приоритет (присвоенный пользователем с помощью команды nice);
  • VIRT - объем используемой виртуальной памяти (здесь выводится тот объем памяти, который был запрошен процессом, даже если фактически используется меньше);
  • RES - объем используемой оперативной памяти (в данном случае, если процесс запросил 50Мб памяти, а использует 10Мб, будет выведено 10Мб);
  • SHR - объем памяти, разделяемой с другими процессами (т.е. память, которая может быть использована другими процессами);
  • S - статус процесса (running - запущен; sleeping - в ожидании; zombie - процесс-"зомби");
  • %CPU - процент использования процессорного времени;
  • %MEM - процент использования оперативной памяти;
  • TIME - общее время работы процесса;
  • COMMAND - имя процесса (команда, которой был запущен процесс).

Управление

Для работы с утилитой top используются следующие клавиши:

  • Пробел - обновить вывод
  • M - сортировка по используемой памяти
  • P - сортировка по нагрузке на процессор (используется по умолчанию)
  • T - сортировка по времени работы процесса
  • A - сортировка по максимальному потреблению различных ресурсов
  • u - сортировка по имени пользователя (потребуется ввести имя пользователя)
  • n - изменить количество процессов в выводе (потребуется указать нужное количество)
  • c - вывести полный путь запущенного процесса (столбец COMMAND)
  • h - вывод справки
  • q - выход из программы

Htop

В отличие от top, утилиту htop сначала необходимо установить на сервер:

apt-get install htop

И после запустить:

htop

Вывод команды выглядит следующим образом:

  • Аналогично выводу top, в верхней части представлена информация о системе, ниже - список процессов. Значения столбцов в htop те же, что в top.
  • Сверху слева можно видеть данные о нагрузке каждого ядра процессора, объем занятой памяти, сведения о количестве процессов, значения load avearage (средней нагрузки) за последние 1, 5 и 15 минут, а также аптайм системы.
  • По умолчанию процессы отсортированы по уровню нагрузки на процессор - от большего к меньшему. Для сортировки по занятой памяти или любому другому параметру, нужно кликнуть на название нужного столбца. Для обратной сортировки (от меньшего к большему) нужно кликнуть на тот же столбец еще раз. Также для управления сортировкой можно использовать клавиши M (сортировка по памяти), P (по процессору) или T (по времени), аналогично утилите top.

Дополнительно используются:

  • Пробел - отметить процесс. Таким образом можно помечать процессы для групповой операции с ними.
  • u - вывести процессы конкретного пользователя.

Для управления используются клавиши F1 - F10:

  • F1 - вывод справки.
  • F2 - настройка вывода (добавление, удаление столбцов, отображение расширенной информации в верхнем блоке и пр.)
  • F3 - поиск процессов
  • F4 - фильтрация процессов (вывод процессов, имеющих в названии указанное слово)
  • F5 - вывод дерева процессов (родительские и дочерние процессы)
  • F6 - изменить тип сортировки
  • F7 / F8 - повышение / понижение приоритета
  • F9 - завершение процесса (в отличие от top, не требуется указание PID - надо выделить с помощью мыши или клавиатуры нужный процесс и нажать F9. Для подтверждения завершения процесса нажать Enter, для отмены - Esc).
  • F10 - выход из программы

Функции для каждой клавиши могут изменяться в зависимости от меню программы, доступные действия по соответствующим клавишам будут отображаться внизу окна.

Предыдущая статья
Другие возможные ошибки VPS
Следующая статья
Не подключается RDP клиент: возможные проблемы и исправление...