Продуктивність сервера в реальному часі можна подивитися за допомогою утиліти Top. Характеристика Load average показує нам про кількість процесів очікують свого виконання. За Load average як правило вимірюють продуктивність сервера.
Продуктивність також перевіряється за допомогою таких утиліт як htop, uptime, top, w і багато інших. У всіх є такий параметр Load averag. Розберемо його детальніше.
Load average
Складається з трьох груп цифр.
Простіше кажучи це інтервали часу, за які була знята навантаження, а саме 1 хвилина, 5 хвилин і 15 хвилин. відповідно. Як правило відбувається очікування ресурсів вводу / виводу дискової підсистеми, центрального процесора або введення / виведення мережевої підсистеми.
Високий показник навантаження Load average повідомляє, що система не справляється з високим навантаженням на сервер. Йдеться про всім сервері, а не про окремих агрегатах. У моїй практиці був зафіксований пік:
Це дуже великий показник, жорсткі гальма. Проблема з продуктивністю жорстких дисків. Показник Load average вище 3-х це вже критично.
Що ще можна витягнути корисного з команди Top.
Продуктивність центрального процесора Cpu (s)
Перші два значення як раз і показують навантаження на Cpu.
Якщо натиснути на кнопку "1". то команда Top відобразить всі процесори і по кожному - відповідне навантаження.
Всі характеристики команди Top CPU:
% Us - це і є сама навантаження на процесор
% Sy - це навантаження на Cpu взято самою системою
% Ni - це відсоток використання процесорного часу процесами зі зміненим nice
% Id - це простий Cpu
% Wa - це відсоток простою пов'язаного з введенням / висновком
% Hi - це відсоток часу, який процесор витрачає на обробку переривань на рівні заліза (IRQ)
% Si - це те ж, що і% hi. тільки для софт-переривань
Використання фізичної пам'яті
Далі йде використання фізичної пам'яті і файлу підкачки.
У пам'яті перший параметр - це загальна кількість пам'яті, другий - використано, далі - доступно і використано під буфер. Ті ж параметри і для файлу Swap.
Таблиця запущених процесів
PID - id процесу за яким можна вбити процес
USER - користувач з під якого запущений процес
PR - рівень / пріоритет процесу
NI - nice процесу
VIRT - віртуальний розмір процесу. Загальна кількість пам'яті, яке здатна використовувати програма. VIRT = DATA + CODE + SWAP + SHR.
RES - використання фізичної пам'яті
SHR - кількість пам'яті яке потенційно може задіяти з іншими програмами при взаємодії
SWAP = VIRT - RES
S - стан процесу:
- D - очікування виконання
- R - виконується
- S - завершений процес
- T - трасується або зупинений
- Z - завислий процес
% CPU - відсоток використання центрального процесу
% MEM - відсоток використання пам'яті
TIME + - час роботи процесу
COMMAND - ім'я процесу (кнопка С дає можливість подивитися і ключі з якими запущений процес)