Linux装杯命令:
查看指定的线程数量: ps -ef|grep zookeeper |grep -v grep | wc -l
查看的最大的线程id: ps -ef|grep zookeeper |grep -v grep | soft -nrk2 | head -n 1|awk '{print$2}'
干掉最大的线程id: ps -ef|grep zookeeper |grep -v grep | soft -nrk2 | head -n 1|awk '{print$2}'| xargs kill -9 (nrk2倒序,nk2 正序)
整机:top 主要用来查看 cpu mem 占有率
还有负载均衡load average
uptime,系统性能命令的精简版
CPU:vmstat
查看cpu
vmstat -n 2 3
一般vmstat 工具的使用时通过两个数字来完成的,第一个参数是采样的时间间隔单位是秒,第二个参数的采样的次数
-procs
r: 运行和等待CPU时间片的进程数 原则上1核的cpu的运行队列不要超过2,整个系统运行队列不能超过总核数的2倍
否则代表系统压力过大
b: 等待资源的线程数,比如正在等待磁盘I/O,网络I/O等
-cpu
us: 用户进程消耗CPU时间百分比,us值高,用户进程消耗CPU时间多,如果长期大于50%,优化程序
sy: 内核进程消耗的CPU时间百分比
us+sy 参考值为80% , 如果us+sy 大于80%,说明可能存在cpu不足
id:处于空闲的CPU百分比
wa:系统等待IO的CPU时间百分比.
st:来自于一个虚拟机偷取的CPU时间的百分比
查看额外
查看所有cpu核信息
mpstat -P ALL 2
某个线程使用cpu的用量分解信息
pidstat -u l -p 进程号 -u:默认的参数,显示各个线程的cpu使用统计
详细的说明
PID:进程ID
%usr: 进程在用户空间占用cpu的百分比
%system:进程在内核空间占用的cpu的百分比
%guest: 进程在虚拟机占用cpu的百分比
%CPU: 进程占用cpu的百分比
Command: 当前线程对应的命令
内存:free
应用程序可用内存数
free
free -g
free -m(常用 必须记住)
查看额外
pidstat -p 进程号 -r 采样间隔数 (-r 显示各个进程的内存使用统计)
硬盘:df 查看磁盘剩余空间数
df -h 显示的更人性化
磁盘IO:iostat
磁盘I/O性能评估
iostat -xdk 2 3
磁盘块设备分布
rkB/s每秒读取数据量kB;
wkB/s每秒写入数据量kB;
svctm I/O请求的平均服务时间,单位毫秒;
await I/O请求的平均等待时间,单位毫秒;值越小,性能越好;
util 一秒中有百分几的时间用于I/O操作。接近100%时,表示磁盘带宽跑满,需要优化程序或者增加磁盘;
rkB/s、wkB/s根据系统应用不同会有不同的值,但有规律遵循:长期、超大数据读写,肯定不正常,需要优化程序读取。
svctm的值与await的值很接近,表示几乎没有I/O等待,磁盘性能好,
如果await的值远高于svctm的值,则表示I/O队列等待太长,需要优化程序或更换更快磁盘。
查看额外
pidstat -d 采样间间隔描述 -p 进程号 (d 显示各个线程的IO使用情况)
显示报告的io如下
PID:进程id
kB_rd/s:每秒从磁盘读取的KB
kB_wr/s:每秒写入磁盘KB
kB_ccwr/s:任务取消的写入磁盘的KB。当任务截断脏的pagecache的时候会发生。
COMMAND:task的命令名