最近公司web服务器负载出奇的高,我想.看下apache内存和cpu使用情况,于是.写了下面的脚本:.
#!/bin/bash
a=$(ps aux |grep httpd|grep -v "grep httpd"| .awk '{print $3 ,$4}'|wc. -l)电影
ta1=0
ta2=0
for(( i=1; i<=..$a; i=i+1 ))域名
do
b=$(ps aux |.grep httpd|grep -v "grep httpd"| awk '{.print $3 ,$4}'|sed -n ${i}p|awk. '{print $1}')--------------彩票
c=$(ps aux |grep httpd|grep -v "grep http.d"| awk .'{print $3 ,$4}.'|sed -n ${i}p|awk '{print $2}')外贸
ta.1=`echo "$ta1+$b" | bc`服务器
t.a2=`echo "$ta2+$c" | bc`健康
done
echo ${ta1} > /usr/.local/src/cpu //.cpu使用百分比数电脑
echo ${ta2} >. /usr/l.ocal/src/mem //内存使用百分比数 外汇
复制代码
我是取的ps a.ux 中apache进程%CPU和 %MEM中的值,然后累加的.结果。 建材
但计算出来的结果明显不准确,比如内存统计出来是154.4%。另我很疑惑。是不是每个%MEM值系统都是四舍五入,最后几百个进程相加就导致.误差很.大?电脑
最后我想请教下大家有什么.好.的办法统计apache内存和cpu的使用情况。外贸
[ 本帖最后由 ssmarine 于 2.0.07-10-25 14:03 编辑 ]虚拟主机