Высокая нагрузка на процессор -?
top - 06:49:29 up 16 days, 4:04, 1 user, load average: 1.29, 1.41, 1.51
Tasks: 113 total, 2 running, 111 sleeping, 0 stopped, 0 zombie
%Cpu(s): 89.3 us, 10.7 sy, 0.0 ni, 0.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 1015912 total, 98976 free, 157212 used, 759724 buff/cache
KiB Swap: 2097148 total, 1861284 free, 235864 used. 644952 avail Mem
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
835 root 20 0 734828 40864 8564 S 5.0 4.0 355:51.95 fortnoxd
20518 root 20 0 748864 41780 12884 S 4.0 4.1 64:35.14 travelpayd
3147 root 20 0 982540 23532 6712 S 2.3 2.3 295:10.06 node
11230 root 20 0 679384 21044 13552 R 1.7 2.1 0:00.05 nodejs
30422 mongodb 20 0 319176 4184 0 S 0.7 0.4 66:08.82 mongod
7 root 20 0 0 0 0 S 0.3 0.0 16:20.24 rcu_sched
984 root 20 0 0 0 0 S 0.3 0.0 4:42.43 hwrng
29166 root 20 0 42084 3736 3176 R 0.3 0.4 0:00.23 top
1 root 20 0 37968 5548 3584 S 0.0 0.5 0:32.93 systemd
2 root 20 0 0 0 0 S 0.0 0.0 0:00.20 kthreadd
3 root 20 0 0 0 0 S 0.0 0.0 3:19.36 ksoftirqd/0
5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H
8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh
9 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0
10 root rt 0 0 0 0 S 0.0 0.0 0:04.40 watchdog/0
11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kdevtmpfs
Здравствуйте, Stackexchange, у меня недавно были некоторые проблемы, связанные с высокой загрузкой процессора, я пользуюсь платным сервисом от Vultr, и они жалуются, что я использую слишком много ресурсов процессора. Это мой топ-лист, на сайте vultr написано: используя 105% мощности процессора на этом сервере, хотя я вижу только 12% используемых?
Являются ли эти 4 процесса единственными, потребляющими электроэнергию, или есть другие вещи, которые могут вызвать интенсивное использование?
835 root 20 0 734828 40864 8564 S 5.0 4.0 355:51.95 fortnoxd
20518 root 20 0 748864 41780 12884 S 4.0 4.1 64:35.14 travelpayd
3147 root 20 0 982540 23532 6712 S 2.3 2.3 295:10.06 node
11230 root 20 0 679384 21044 13552 R 1.7 2.1 0:00.05 nodejs
root@server-nodes:/# lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
CPU(s): 1
On-line CPU(s) list: 0
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 60
Model name: Virtual CPU 714389bda930
Stepping: 1
CPU MHz: 2399.996
BogoMIPS: 4799.99
Hypervisor vendor: KVM
Virtualization type: full
L1d cache: 32K
L1i cache: 32K
L2 cache: 4096K
L3 cache: 16384K
NUMA node0 CPU(s): 0
1 ответ
Первый и самый важный вопрос: производительность хоста соответствует вашим требованиям. Время отклика пользователя, пропускная способность. Если нет, измените его: сделайте рабочую нагрузку более эффективной или добавьте больше ресурсов (больше процессоров, масштабируйтесь до большего количества блоков).
У вас есть 1 процессор, который иногда сообщает о средней загрузке 1,5. В среднем более одной задачи, ожидающей выполнения, будут полностью использовать блок 1 ЦП. ( Являются ли полностью использованные средства остановленными, другой вопрос.)
Обратите внимание на странице руководства, что измеряет верх:
% ЦП - загрузка ЦП Доля задачи, затраченная с момента последнего обновления экрана, в процентах от общего времени ЦП.
Так как последний интервал обновления сверху может не перехватить пачки до 100%. Посмотрите на столбец ВРЕМЯ для общего ЦП, потребленного за время жизни процесса.
Также попробуйте другие инструменты производительности Linux, их много. perf top
например, покажет, где именно в коде пользователя или ядра находятся топ-задания.