top命令
第一行
top - 14:30:20 表示当前时间 up 后的字段展示,虚拟机运行时间(20小时44分钟),
1 user 表示一个用户处于连接 状态,
load average: 1.17, 1.12, 1.08 — load average后面的三个数分别是1分钟、5分钟、15分钟的负载情况。
load average数据是每隔5秒钟检查一次活跃的进程数,然后按特定算法计算出的数值。如果这个数除以逻辑CPU的数量,结果高于5的时候就表明系统在超负荷运转了。
系统平均负载:单核CPU情况下,0.00 表示没有任何负荷,1.00表示刚好满负荷,超过1侧表示超负荷,理想值是0.7;
多核CPU负载:CPU核数 * 理想值0.7 = 理想负荷,例如:4核CPU负载不超过2.8何表示没有出现高负载
第二行
Tasks — 任务(进程),系统现在共有97个进程,其中处于运行中的有1个,55个在休眠(sleep),stoped状态的有0个,zombie状态(僵尸)的有0个。
第三行:cpu状态
52.0% us — 用户空间占用CPU的百分比。
1.5% sy — 内核空间占用CPU的百分比。
0.0% ni — 改变过优先级的进程占用CPU的百分比
46.3% id — 空闲CPU百分比
0.0% wa — IO等待占用CPU的百分比
0.0% hi — 硬中断(Hardware IRQ)占用CPU的百分比
0.2% si — 软中断(Software Interrupts)占用CPU的百分比
如果该linux机子是虚拟机,还有另外一个字段
( st : time stolen from this vm by the hypervisor 表示hypervisor从这个vm窃取的时间)
第四行:内存状态
总量total:3663056 已使用used:3339148 空闲量free:104100 缓存的内存量buff/cache:219808
第五行:交换区状态
意义同内存状态栏
%us:表示用户空间程序的cpu使用率(没有通过nice调度)
%sy:表示系统空间的cpu使用率,主要是内核程序。
%ni:表示用户空间且通过nice调度过的程序的cpu使用率。
%id:空闲cpu
%wa:cpu运行时在等待io的时间
%hi:cpu处理硬中断的数量
%si:cpu处理软中断的数量
%st:被虚拟机偷走的cpu
注:99.0 id,表示空闲CPU,即CPU未使用率,100%-99.0%=1%,即系统的cpu使用率为1%。
PID:进程的ID
USER:进程所有者
PR:进程的优先级别,越小越优先被执行
NInice:值
VIRT:进程占用的虚拟内存
RES:进程占用的物理内存
SHR:进程使用的共享内存
S:进程的状态。S表示休眠,R表示正在运行,Z表示僵死状态,N表示该进程优先值为负数
%CPU:进程占用CPU的使用率
%MEM:进程使用的物理内存和总内存的百分比
TIME+:该进程启动后占用的总的CPU时间,即占用CPU使用时间的累加值。
COMMAND:进程启动命令名称
查看对应的进程
top -H -p pid
参考:https://my.oschina.net/u/4362986/blog/3852714
使用free -m查看内存的使用情况,-m表示查询出来的单位是兆
使用df -h命令查看硬盘的使用情况
使用iostat -d 2 3查看磁盘io的情况
iostat -d 2 3: 打印出磁盘io信息
tps: 每分钟提交事务的次数,也就是向磁盘写数据的次数(增册改)
qps: 每分钟查询磁盘的次数
pv: PageView页面浏览的次数
mpstat
mpstat命令会把每一个可用的处理器都写入标准输出中,第一个处理器编号为0,同时对所有处理器的全部平均值做一次报告。默认情况下,只会输出全部平均值。要查看每一个CPU的情况,需要增加参数。
输入:mpstat
输出:
输入:mpstat -P ALL
输出:
sar
使用sar命令可以收集,报告和保存系统活动信息。sar命令会把当天的CPU活动情况全部写入标准输出中。默认记录间隔时间是10分钟,你也可以添加参数来指定sar需要收集数据。
输入:sar
输出:
ps
ps是一条功能非常全面的命令。通过使用ps命令,可以很清楚的看出到底是哪一条进程在吃CPU。排在前面的占用的CPU越多
输入:ps -eo pcpu,pid,user,args | sort -k 1 -r | head -16
输出
perf
安装perf
yum list perf
yum -y install perf.x86_64
由于需要到github下载可视化分析工具FlameGraph,所以要先安装git
yum list git
yum -y install git.x86_64
git clone https://github.com/JaxYoun/FlameGraph.git
mv FlameGraph fg //方便起见,重命名FlameGraph目录
采集、转换、可视化【root权限】
perf record -F 99 -p 18733 -g -- sleep 30
perf script -i perf.data &> perf.unfold
fg/stackcollapse-perf.pl perf.unfold &> perf.folded
fg/flamegraph.pl perf.folded > perf.svg
将perf.svg下载到本地用Chrome浏览器打开即可阅读。
free
cat /proc/meminfo
cat /proc/cpuinfo
du -sh *
查看CPU个数
cat /proc/cpuinfo | grep "physical id" | uniq | wc -l
查看CPU核数
cat /proc/cpuinfo | grep "cpu cores" | uniq
查看CPU型号
cat /proc/cpuinfo | grep 'model name' |uniq
当前共有 0 条评论