进程管理工具linux,进程管理工具

进程管理工具

htop

语法

htop [-dChusv]

选项

-C --no-color        使用一个单色的配色方案

-d --delay=DELAY     设置延迟更新时间,单位秒

-h --help          显示htop 命令帮助信息

-u --user=USERNAME   只显示一个给定的用户的过程

-p --pid=PID,PID…    只显示给定的PIDs

-s --sort-key COLUMN  依此列来排序

-v –version        显示版本信息

实例

CPU[* 0.7%] Tasks: 24, 17 thr; 1 running

Mem[||||||||||#**************** 172M/976M] Load average: 0.00 0.01 0.05

Swp[ 0K/2.00G] Uptime: 03:16:26

PID USER PRI NI VIRT RES SHR S CPU% MEM% TIME+ Command

2843 root 20 0 119M 2304 1476 R 0.7 0.2 0:00.10 htop

638 root 20 0 295M 6024 4644 S 0.7 0.6 0:18.16 /usr/bin/vmtoolsd

.............

1502 root 20 0 540M 18464 5788 S 0.0 1.8 0:00.00 /usr/bin/python -Es /usr/sbin/tuned -l -P

1505 root 20 0 540M 18464 5788 S 0.0 1.8 0:00.00 /usr/bin/python -Es /usr/sbin/tuned -l -P

F1Help F2Setup F3Search F4Filter F5Tree F6SortBy F7Nice -F8Nice +F9Kill F10Quit

参数说明

CPU usage bar: [low-priority/normal/kernel/virtualiz used%] //CPU负载

Memory bar: [used/buffers/cache used/total] //内存消耗

Swap bar: [used used/total] //交换空间

Task:进程总数、当前运行的进程数

Load average:系统为1分钟、5分钟、10分钟的平均负载情况

uptime:系统运行时间

PID: 进程的标识号

USER: 运行进程的用户

PRI: 进程的优先级

NI: 进程的优先级别值,默认为0,可以进行调整

VIRT: 进程占用的虚拟内存值

RES: 进程占用的物理内存值

SHR: 进程占用的共享内存值

S: 进程的运行状态,R表示正在运行;S表示休眠,等待唤醒,Z表示僵死状态

CPU%: 进程占用的CPU使用率

MEM%: 进程占用的物理内存和总内存的百分比

TIME+: 进程启动后占用总的CPU时间

Command: 进程启动的启动命令名称

快捷键

功能键

说明

?

F1

查看htop使用说明

S

F2

htop 设定

/

F3

搜索,搜索进程名,直接颜色显示

\

F4

进程过滤器:相当于模糊查找,不区分大小写,下方输入要搜索的内容后,则界面只显示搜索到的内容,更加方便查看

t

F5

显示帮助信息

F6

选择排序方式

[

F7

可减少nice值可以提高对应进程的优先级

]

F8

可增加nice值,降低对应进程的优先级

k

F9

可对进程传递信号

q

F10

结束htop

vmstat 显示虚拟内存状态(“Viryual Memor Statics”),但是它可以报告关于进程、内存、I/O等系统整体运行状态。

语法

vmstat(选项)(参数)

选项

-a:显示活动内页;

-f:显示启动后创建的进程总数;

-m:显示slab信息;

-n:头信息仅显示一次;

-s:以表格方式显示事件计数器和内存状态;

-d:报告磁盘状态;

-p:显示指定的硬盘分区状态;

-S:输出信息的单位。

实例

[root@localhost ~]# vmstat

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----

r b swpd free buff cache si so bi bo in cs us sy id wa st

2 0 0 706820 1444 161912 0 0 13 1 29 47 0 0 100 0 0

参数说明

Procs(进程)

r 表示运行队列(就是说多少个进程真的分配到CPU),服务器目前CPU比较空闲,没什么程序在跑,当这个值超过了CPU数目,就会出现CPU瓶颈了

b 表示阻塞的进程,这个不多说,进程阻塞

Memory(内存)

swpd 虚拟内存已使用的大小,如果大于0,表示你的机器物理内存不足了,如果不是程序内存泄露的原因,那么你该升级内存了或者把耗内存的任务迁移到其他机器。

free 空闲的物理内存的大小

buff Linux/Unix系统是用来存储,目录里面有什么内容,权限等的缓存

cache cache直接用来记忆我们打开的文件,给文件做缓冲。(Linux把空闲的物理内存的一部分拿来做文件和目录的缓存,是为了提高 程序执行的性能,当程序使用内存时,buffer/cached会很快地被使用。)

Swap

si 每秒从磁盘读入虚拟内存的大小,如果这个值大于0,表示物理内存不够用或者内存泄露了,要查找耗内存进程解决掉。我的机器内存充裕,一切正常。

so 每秒虚拟内存写入磁盘的大小,如果这个值大于0,同上。

IO

bi 块设备每秒接收的块数量,这里的块设备是指系统上所有的磁盘和其他块设备,默认块大小是1024byte,如果没什么IO操作,一直是0,如果处理拷贝大量数据(2-3T)的机器上看过可以达到140000/s,磁盘写入速度差不多140M每秒

bo 块设备每秒发送的块数量,例如我们读取文件,bo就要大于0。bi和bo一般都要接近0,不然就是IO过于频繁,需要调整。

system

in 每秒CPU的中断次数,包括时间中断

cs 每秒上下文切换次数,例如我们调用系统函数,就要进行上下文切换,线程的切换,也要进程上下文切换,这个值要越小越好,太大了,要考虑调低线程或者进程的数目,例如在apache和nginx这种web服务器中,我们一般做性能测试时会进行几千并发甚至几万并发的测试,选择web服务器的进程可以由进程或者线程的峰值一直下调,压测,直到cs到一个比较小的值,这个进程和线程数就是比较合适的值了。系统调用也是,每次调用系统函数,我们的代码就会进入内核空间,导致上下文切换,这个是很耗资源,也要尽量避免频繁调用系统函数。上下文切换次数过多表示你的CPU大部分浪费在上下文切换,导致CPU干正经事的时间少了,CPU没有充分利用,是不可取的。

us 用户CPU时间,比如加密解密很频繁的服务器上,可以看到us接近100,r运行队列达到80(机器在做压力测试,性能表现不佳)。

cpu

sy 系统CPU时间,如果太高,表示系统调用时间长,例如是IO操作频繁。

id 空闲 CPU时间,一般来说,id + us + sy = 100,一般我认为id是空闲CPU使用率,us是用户CPU使用率,sy是系统CPU使用率。

wa 等待IO时间,Wa过高时,说明io等待比较严重,这可能是由于磁盘大量随机访问造成的,也有可能是磁盘的带宽出现瓶颈。

st 从虚拟设备中获得的时间

每两秒显示一次统计信息,一个显示5次 vmstat 2 5

[root@localhost ~]# vmstat 2 5

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----

r b swpd free buff cache si so bi bo in cs us sy id wa st

2 0 0 705656 1444 162656 0 0 9 1 27 44 0 0 100 0 0

0 0 0 705640 1444 162656 0 0 0 0 26 39 0 0 100 0 0

0 0 0 705640 1444 162656 0 0 0 0 31 39 0 1 100 0 0

0 0 0 705640 1444 162656 0 0 0 0 32 43 1 0 100 0 0

0 0 0 705640 1444 162656 0 0 0 0 28 33 0 0 100 0 0

显示磁盘信息 vmstat -d

[root@localhost ~]# vmstat -d

disk- ------------reads------------ ------------writes----------- -----IO------

total merged sectors ms total merged sectors ms cur sec

sda 5458 1 238084 28256 482 117 26845 85154 0 20

sdb 362 0 4182 498 10 0 24 4 0 0

sr0 11 0 88 67 0 0 0 0 0 0

dm-0 2966 0 186887 25238 585 0 18613 120307 0 19

dm-1 126 0 1872 38 0 0 0 0 0 0

md0 66 0 962 0 1 0 8 0 0 0

dm-2 128 0 1137 24 4 0 4096 8 0 0

显示活跃内存与非活跃内存 vmstat -a

[root@localhost ~]# vmstat -a

procs -----------memory---------- ---swap-- -----io---- -system-- ------cpu-----

r b swpd free inact active si so bi bo in cs us sy id wa st

2 0 0 705656 68704 117560 0 0 9 1 27 43 0 0 100 0 0

显示启动后创建的进程总数 vmstat -f

[root@localhost ~]# vmstat -f

2439 forks

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值