查看全部进程
通过top或ps -ef | grep '进程名' 得到进程的PID。该命令可以提供进程状态、文件句柄数、内存使用情况等信息。
#pa aux
先查看进程
nginx的工作进程是5757
pmap命令
可以显示一个或多个进程所使用的内存数量。你可以使用这个工具来了解服务器上的某个进程分配了多少内存,输出进程内存的状况,可以用来分析线程堆栈。
#pmap 进程id
可以看出加载的动态链接库信息。
要得到更加详细的信息,使用pmap -d选项
proc查看进程状态
查看经常地址空间信息
#cat /proc/进程ip/maps
查看全部内存信息
cat /proc/meminfo
查看cpu的配置信息
cat /proc/cpuinfo
它能显示诸如CPU核心数,时钟频率、CPU型号等信息
监控进程线程数
ps -eLf | grep 进程 | wc -l
监控网络客户连接数
netstat -n | grep tcp | grep 侦听端口 | wc -l
#netstat -n | grep tcp | grep 80 | wc -l
#ps -eLf | grep nginx | wc -l
vmstat
vmstat是一个十分有用的Linux系统监控工具,使用vmstat命令可以得到关于进程、内存、内存分页、堵塞IO、traps及CPU活动的信息
#vmstat -s -S M
该可以查看包含内存每个项目的报告,通过-S M或-S k可以指定查看的单位,默认为kb。
每N秒输出一条结果
#vmstat 2
字段说明:
Procs(进程):
r: 运行队列中进程数量
b: 等待IO的进程数量
Memory(内存):
swpd: 使用虚拟内存大小
free: 可用内存大小
buff: 用作缓冲的内存大小
cache: 用作缓存的内存大小
Swap:
si: 每秒从交换区写到内存的大小
so: 每秒写入交换区的内存大小
IO:(现在的Linux版本块的大小为1024bytes)
bi: 每秒读取的块数
bo: 每秒写入的块数
系统:
in: 每秒中断数,包括时钟中断。
cs: 每秒上下文切换数。
CPU(以百分比表示):
us: 用户进程执行时间(user time)
sy: 系统进程执行时间(system time)
id: 空闲时间(包括IO等待时间)
wa: 等待IO时间
显示活跃和非活跃内存
使用-a选项显示活跃和非活跃内存时,所显示的内容除增加inact和active外,其他显示内容与前一个例子相同。
字段说明:
Memory(内存):
inact: 非活跃内存大小(当使用-a选项时显示)
active: 活跃的内存大小(当使用-a选项时显示)