Eu acho difícil saber exatamente quanto recursos um programa "deveria" usar, mas existem alguns indicadores que você pode verificar se existem recursos suficientes para o seu sistema manipular o programa.
Primeiro, verificamos o PID do processo por (por exemplo, o nome do processo é 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
Aqui sabemos que o ID do processo é 795, por isso fazemos uso do comando 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
A partir da saída, sabemos que o processo está usando cerca de 2,4 núcleos de CPU, enquanto o sistema tem 24 núcleos instalados. Além disso, a memória usada em porcentagem é de cerca de 0,02% na quantidade total de memória instalada.
Além de tais informações, acho que valeria a pena ter uma verificação geral do sistema para evitar a escassez de recursos.
Primeiramente, para verificar o carregamento da CPU , você pode usar o comando sar . Para determinar o mau desempenho de um sistema, você deve verificar a seguinte saída.
Em situação normal, a saída do iostat seria semelhante à seguinte:
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
O valor para% ocioso deve permanecer alto, enquanto o valor de% user,% system e% iowait deve ser baixo para um sistema não ocupado.
Para o problema de disco I / O , você pode verificar o resultado de 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
Este é um mau exemplo, como você pode ver a porcentagem de utilização para o dispositivo sdc se tornou 97,29%, o que indica que há um problema de E / S de disco.
Para verificar se temos memória suficiente para o sistema, dê uma olhada no uso da paginação:
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
Como podemos ver a paginação por segundo é muito alta para este servidor, portanto podemos suspeitar que o sistema está ficando sem memória.