linux性能参数

刚才写python脚本时发现虚拟机卡的不行,定位到由于某个程序不停的启停导致内存快消耗光了

下面贴几个之前学习过的linux想能相关的几个常见命令:

可以查看到具体哪些程序占用的内存和cpu:

1.linux下获取占用CPU资源最多的10个进程,可以使用如下命令组合:
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +3|head

或者top+M

2.linux下获取占用内存资源最多的10个进程,可以使用如下命令组合:
ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head

或者top+P

以第一条命令为例,进行解析:

其中第一句主要是为了获取标题(USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND)。
接下来的grep -v PID是将ps aux命令得到的标题去掉,即grep不包含PID这三个字母组合的行,再将其中结果使用sort排序。
sort -rn -k +3该命令中的-rn的r表示是结果倒序排列,n为以数值大小排序,而-k +3则是针对第3列的内容进行排序,再使用head命令获取默认前10行数据。(其中的|表示管道操作)

 

   

1.uptime:

linux性能参数

当前系统运行时间,系统至今运行时间,登录用户数,1分钟、五分钟、15分钟至今的负载情况;

load average:队列平均长度,在队列中等待执行的进程数量;该值低,进程更有可能被立即处理,该值高,可能阻塞;

    2.top:

linux性能参数

top第一行是update内容;

第二行:进程信息-tasks:进程总数,正在运行的进程数,睡眠进程数,停止进程数,僵尸进程数

第三行:CPU信息-cpus:用户空间占用cpu百分比,用户进程空间内,改变过优先级的进程占用cpu百分比,空闲cpu百分比,等待输入输出的cpu百分比;

第四行:物理内存-mem:物理内存总量,使用的物理内存量,空闲内存,用作内核缓存的内存;

第五行:交换信息区:交换区总量,使用的交换区量,空闲交换区量,缓冲的交换区量;

pid:进程id;ppid:父进程id;user:进程所有者的用户id;pr:优先级;ni:负值表示高优先级,正直表示低优先级;

virt:进程使用的虚拟内存总量,virt=swap+res;res:常驻内存,进程使用的未被换出的物理内存大小,res=swap+data;

shr:共享内存大小,即该进程和其他进程共享内存的数量;

%cup:上次更新到现在的cpu时间占用百分比;

%mem:进程使用的物理内存百分比;

Time+:进程使用的cpu时间总计;

command:命令名称

3.pmap + pid  查看具体进程使用内存的情况;

或者使用命令

4.在/proc下有对应的进程