Команда top для windows

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

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

Проанализировать, что именно нагружает сервер, можно с помощью специальных утилит. Их довольно много; в статье мы рассмотрим три из них:

В целом они довольно похожи; работа с htop может быть немного удобнее за счет интерактивности; при этом top предустановлена во всех дистрибутивах Linux и не требует отдельной установки; atop отличается возможностью ведения логов.

При медленной работе сайта дополнительно рекомендуем воспользоваться сервисом PageSpeed Insights от Google, который анализирует скорость загрузки страниц и сообщает, каким образом можно оптимизировать работу сайта. Также можно попытаться оптимизировать работу сайта за счет переноса каталога временных файлов MySQL в tmpfs.

Как было сказано выше, утилита 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Мб);

Читайте также:  Bootmgr efi windows 10

SHR — объем памяти, разделяемой с другими процессами (т.е. память, которая может быть использована другими процессами);

S — статус процесса (running — запущен; sleeping — в ожидании; zombie — процесс-«зомби»);

%CPU — процент использования процессорного времени;

%MEM — процент использования оперативной памяти;

TIME — общее время работы процесса;

COMMAND — имя процесса (команда, которой был запущен процесс).

Управление

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

Пробел — обновить вывод

M — сортировка по используемой памяти

P — сортировка по нагрузке на процессор (используется по умолчанию)

T — сортировка по времени работы процесса

A — сортировка по максимальному потреблению различных ресурсов

u — сортировка по имени пользователя (потребуется ввести имя пользователя)

k — завершить процесс (потребуется указать его идентификатор, PID)

n — изменить количество процессов в выводе (потребуется указать нужное количество)

c — вывести полный путь запущенного процесса (столбец COMMAND)

h — вывод справки

q — выход из программы

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

Ubuntu / Debian:

CentOS:

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

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

Аналогично выводу top, в верхней части представлена информация о системе, ниже — список процессов. Значения столбцов в htop те же, что в top (они описаны выше).

Сверху слева вы можете видеть данные о нагрузке каждого ядра процессора, объем занятой памяти, сведения о количестве процессов, значения load avearage (средней нагрузки) за последние 1, 5 и 15 минут и аптайм системы.

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

Чтобы отсортировать их по занятой памяти (или любому другому параметру), просто кликните на название нужного столбца, например MEM. Для обратной сортировки (от меньшего к большему) достаточно кликнуть на тот же столбец еще раз. Также для управления сортировкой можно использовать клавиши M (сортировка по памяти), P (по процессору), T (по времени), аналогично утилите top.

Пробел — отметить процесс (таким образом можно помечать процессы для групповой операции с ними, например, завершения).

u — вывести процессы конкретного пользователя.

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

F1 — вывод справки

F2 — настройка вывода (добавление, удаление столбцов, отображение расширенной информации в верхнем блоке и пр.)

F3 — поиск процессов

F4 — фильтрация процессов (вывод процессов, имеющих в названии указанное слово)

F5 — вывод дерева процессов (родительские и дочерние процессы)

F6 — изменить тип сортировки

F7 / F8 — повышение / понижение приоритета

F9 — завершение процесса (в отличие от top, не требуется указание PID — просто выделите с помощью мыши или клавиатуры нужный процесс и нажмите F9. Для подтверждения завершения процесса нажмите Enter, для отмены — Esc).

F10 — выход из программы

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

Читайте также:  The best windows notebook

Основным преимуществом утилиты atop является функция ведения логов. Благодаря этому можно не только контролировать нагрузку в текущий момент, но и отслеживать работу процессов за прошедшие дни, чтобы диагностировать плавающие ошибки, которые сложно «поймать» при мониторинге в реальном времени.

Утилиту необходимо установить на сервер:

Ubuntu / Debian:

CentOS:

Также рекомендуем добавить atop в автозагрузку:

Ubuntu / Debian / CentOS 7:

Проверка загрузки процессора с помощью команды top

top (table of processes) — консольная команда, которая выводит список работающих в системе процессов и информации о них. По умолчанию она в реальном времени сортирует их по нагрузке на процессор.

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

Она позволяет вывести в виде таблицы перечень запущенных процессов и оценить, какой объем ресурсов они потребляют, т.е., какую нагрузку создают на сервер и дисковую подсистему. Такая информация помогает в дальнейшем оптимизировать работу системы.

Для этого подключимся к серверу по SSH и введем в консоли top — Enter и вы увидим таблицу, в которой выведен список запущенных процессов. Изначально перечень составлен в порядке убывания нагрузки, приходящейся на процессор.

Запуск команды top и расшифровка таблицы

Первые два столбика — номер процесса (PID) и имя пользователя, его запустившего (USER).

Следующие 2 столбца показывают, какой приоритет имеет процесс в данный момент (PR) и приоритет, присвоенный ему командой NICE (NI).

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

VIRT — виртуальная память, которую использует процесс

RES — физическая память, занятая данным процессом

SHR — общий объем памяти, которую данный процесс делит с другими

S — текущий статус процесса: R — running; S — sleeping, Z — zombie

%CPU — процент используемого времени центрального процессора

%MEM — процент ОЗУ, используемой процессом

TIME+ — продолжительность работы процесса с момента запуска

COMMAND — название команды (программы), которая инициировала процесс.

Расшифровка данных перед таблицей

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

Первая строчка дает нам общее представление о загрузке системы (top)

текущее время

up — продолжительность работы системы с момента запуска

user — текущее количество пользователей системы

load average — средняя загруженность системы одну минуту назад, пять и 15 соответственно.

Считается, что в норме данный показатель не должен превышать 1 для одноядерных процессоров. Соответственно, значение load average, равное количеству ядер, является предельным.

Читайте также:  Windows не находит com порт

Вторая строка — статистика процессов (task)

total — общее количество процессов в системе

running — количество работающих в данный момент процессов

sleeping — количество ожидающих событий процессов

stopped — количество остановленных процессов

zombie — количество процессов, ожидающих родительский процесс для передачи статуса завершения

Третья строка — статистика использования центрального процессора (cpu)

us — процент использования центрального процессора пользовательскими процессам

sy — процент использования центрального процессора системными процессами

ni — процент использования центрального процессора процессами с приоритетом, повышенным при помощи вызова

id — процент времени, когда центральный процессор не используется

wa — процент использования центрального процессора процессами, ожидающими завершения операций ввода-вывода

hi — Hardware IRQ (аппаратные прерывания) — процент использования центрального процессора обработчиками аппаратных прерываний

si — Software Interrupts (программные прерывания) — процент использования центрального процессора обработчиками программных прерываний

st — Steal Time (заимствованное время) — количество ресурсов центрального процессора «заимствованных» у виртуальной машины гипервизором для других задач (таких, как запуск другой виртуальной машины); это значение будет равно нулю на настольных компьютерах и серверах, не использующих виртуальные машины

В четвертой и пятой строке выводится информация об использовании физической оперативной памяти и раздела подкачки соответственно (swap). Значения в порядке следования: общее количество памяти (total), количество используемой памяти (used), количество свободной памяти (free), количество памяти в кэше буферов (buffers).

Добавление столбцов и сортировка таблицы top

Теперь мы знаем, какая информация зашифрована в каждом столбце таблицы top. Базовая сортировка данных осуществляется по уровню использования времени ЦПУ, оно же %CPU. Чтобы выполнить в top сортировку по памяти (%MEM), достаточно ввести Shift+M в режиме работы команды top. Если интересует, какой из процессов дольше всего работает, нажмите Shift+T, и увидите интересующую информацию в колонке TIME+. Можно отсортировать процессы по их номеру (PID), набрав на клавиатуре Shift+N.

Чтобы вернуться к режиму сортировки по уровню потребления ресурсов процессора, воспользуйтесь комбинацией Shift+P.

Далеко не все способы сортировки можно задать с помощью «горячих клавиш». Например, для определения процессов, которые больше всего потребляют SWAP, используйте меню выбора полей, которое вызывается комбинацией Shift+F.

С помощью клавиш навигации находим SWAP (или любой другой нужный параметр), клавишей «d» закрепляем его добавление в общую таблицу команды top (в качестве подтверждения вашего выбора рядом появится символ «»). Чтобы задать сортировку по SWAP, здесь же нажимаем «s» и выходим из меню (ESC)*.

Убедиться, что сортировка работает по заданному признаку, можно нажав «x». Колонка с соответствующим признаком будет подсвечена (выделена жирным шрифтом).

Существует более удобная утилита под названием atop, более подробно c ее функционалом можно ознакомиться на данной странице.

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

Оцените статью