Высокая нагрузка в среднем, низкий процессор

10

Мой сервер замедлился, и я не знаю почему.

Печать сверху:

top - 14:32:50 up 639 days,  6:30,  1 user,  load average: 67.93, 70.63, 79.85
Tasks: 245 total,   1 running, 244 sleeping,   0 stopped,   0 zombie
Cpu(s):  3.9% us,  0.5% sy,  0.0% ni, 94.5% id,  1.0% wa,  0.0% hi,  0.0% si
Mem:   1034784k total,  1021256k used,    13528k free,     4360k buffers
Swap:  1023960k total,   635752k used,   388208k free,    36632k cached

vmstat 10 6

procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa
 0 110 795604  12328   3980  46676    0    0     0     0    0     0  4  1 95  1
 0 97 788848  12052   3960  46256 2985   33  3323    33  429     0  2  1  0 97
 0 119 782660  13992   4096  45740 2780   14  2995   360  435     0  2  1  1 96
 0 121 775924  15600   3724  42796 3084    0  3443   136  440     0  2  1  0 98
 0 113 769392  13576   3476  41968 3002    0  3458     7  426     0  2  1  0 97
 0 113 762284  12440   3332  34884 3151    0  3553    61  427     0  2  1  0 97

doitprod2: / var / log # grep -c процессор / proc / cpuinfo

2

иостат 2

 tps   Blk_czyt/s   Blk_zapis/s  Blk_czyt   Blk_zapis
sda             166,00      7128,00        52,00      14256        104

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

Kamilos
источник
Вы можете включить вывод vmstat 10 6? (это займет 60 секунд, чтобы бежать), а такжеgrep -c processor /proc/cpuinfo
Джеймс C
В ответах / комментариях на serverfault.com/q/482832/58957 перечислены другие причины и объяснения этих симптомов.
Николай

Ответы:

9

Вероятно, у вас есть процессы в UNINTERRUPTIBLE_SLEEPсостоянии, обычно они находятся в этом состоянии, потому что они ожидают чего-то от аппаратного обеспечения, такого как чтение с диска. Эти процессы эффективно спят (у вас есть 244 спящих процесса), но они входят в расчет Load Average. Проверьте IO вашего сервера vmstatи посмотрите, много ли у вас Dстатусов topили psдля подтверждения.

РЕДАКТИРОВАТЬ: Просмотр вашего vmstatвывода еще раз подтверждает проблему ввода-вывода. Ваша bколонка procsпоказывает в среднем 100 процессов непрерывного сна. Ваш biстолбец (блоки, считываемые с блочного устройства) очень высок, равно как и siстолбец (память, считываемая с swap / disk). Наконец, под cpuзаголовком waстолбец показывает, что ваш процессор тратит более 90% в ожидании завершения ввода-вывода.

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

CoreDump
источник
1
Вы можете начать поиск ответственного с помощью iotop( apt-get install iotop). Кроме того, в обычном порядке сортировки по памяти используйте O (это заглавная), затем n, затем введите. Лучшие пользователи памяти могут быть ответственны за весь обмен.
Эдуардо Иванец
2

Проверьте 1,0% ва у вас на вершине, если он становится высоким. Поскольку вы нажали файл подкачки, процессы могут ожидать ввода-вывода.

Убедитесь cat /proc/sys/fs/file-nr, что первое число близко к третьему (количество открытых файлов и общее количество открытых файлов).

Вы на VPS?

pataroulis
источник
/ proc / sys / fs / file-nr 3600 0 102712
Камилос,
Вероятно, это пролило бы некоторый свет, если бы вы могли поделиться типом программного обеспечения, которое вы используете на сервере. (например, apache, tomcat, glassfish и т. д.). Но, конечно, больше оперативной памяти (двойной или больше) дало бы вашей машине хороший импульс.
Pataroulis
1

Показатель iowait (указанный в последнем столбце как «wa») в выводе vmstat очень высок. И происходит много подкачки страниц (страницы данных перемещаются между физической памятью и диском подкачки).

Эта машина извлекла бы выгоду из большего количества физической памяти.

Джеймс С
источник