Я думаю, что трудно точно знать, сколько ресурсов «должна» использовать программа, но есть некоторые индикаторы, которые вы можете проверить, достаточно ли ресурсов для вашей системы, чтобы обработать программу.
Сначала мы проверяем PID для процесса по (например, имя процесса - dataserver):
ps aux | grep dataserver sybxxx 795 52.9 0.0 1190088 22548 ? S<sl Jun06 38192:51 /sybase/XXX/ASE-16_0/bin/dataserver
Здесь мы знаем, что идентификатор процесса - 795, поэтому мы используем команду pidstat :
pidstat -h -r -u -p 795 5 Time PID %usr %system %guest %CPU CPU minflt/s majflt/s VSZ RSS %MEM Command 1469520679 795 242.80 5.00 0.00 247.80 24 0.00 0.00 53618888 22548 0.02 dataserver
Из результатов мы знаем, что процесс использует около 2,4 ядра процессора, в то время как в системе установлено 24 ядра. Кроме того, используемая память в процентах составляет около 0,02% от общего объема установленной памяти.
Помимо такой информации, я думаю, что было бы достаточно провести общую проверку системы, чтобы предотвратить нехватку ресурсов.
Во-первых, чтобы проверить загрузку процессора, вы можете использовать команду sar . Чтобы определить плохую производительность системы, вы должны проверить следующий вывод.
В нормальной ситуации вывод iostat будет примерно таким:
sar 12:00:01 AM CPU %user %nice %system %iowait %steal %idle 12:10:01 AM all 0.70 0.00 0.15 0.01 0.00 99.13
Значение% idle должно оставаться высоким, в то время как значение% user,% system и% iowait должно быть низким для незанятой системы.
Для проблемы дискового ввода-вывода вы можете проверить результат iostat -x :
Device: rrqm/s wrqm/s r/s w/s rsec/s wsec/s avgrq-sz avgqu-sz await svctm %util sda 0.07 1.58 0.27 1.04 13.72 20.87 26.54 0.01 7.50 3.33 0.43 sdc 4.09 252.47 483.10 5.90 18616.61 2148.57 42.46 5.88 12.03 1.99 97.29
Это плохой пример, поскольку вы можете видеть, что процент использования устройства SDC стал 97,29%, что указывает на проблему с дисковым вводом / выводом.
Чтобы проверить, достаточно ли у нас памяти для системы, взгляните на использование подкачки:
sar -B 10:30:01 AM pgpgin/s pgpgout/s fault/s majflt/s pgfree/s pgscank/s pgscand/s pgsteal/s %vmeff 10:40:01 AM 8524.25 47.12 856.03 0.00 263.76 0.00 0.00 0.00 0.00 10:50:01 AM 8391.64 82.94 1116.50 0.08 377.87 0.00 0.00 0.00 0.00
Как мы видим, количество страниц в секунду для этого сервера очень велико, поэтому мы можем подозревать, что системе не хватает памяти.