目录
CPU密集型:应用程序执行繁重的计算,通常运行时间较长,会占用大量的CPU资源
CPU密集型
通过stess模拟cpu密集导致平均负载变高,cpu使用率变高
模拟cpu被占用100%的情况(服务器cpu是2核):stress --cpu 2 --timeout 600
通过uptime命令也可以看出平均负载很高
通过 mpstat -P ALL 5 (表示所有的CPU,5表示每5秒产生一个报告)命令可以看出cpu使用率一直很高,iowait使用率很低
通过pidstat -u 5 1 (
- -u:默认的参数,显示各个进程的cpu使用统计
- 5:以5秒为间隔,统计5秒的值
- 1:输出1次)
可以看到是stress进程导致CPU使用率较高
IO密集型
IO密集型:应用程序执行I/O,计算不多,会占用大量的内存资源
对IO进行压测:
通过stess模拟io密集下导致平均负载变高,iowait变高
命令:stress -i 2 --timeout 600(2表示2个io进程,在 600秒后结束程序)
平均负载情况信息如下:
查看进程资源信息: mpstat -P ALL 5 1
可以看到iowait的资源呈上升趋势
使用pid命令查看是stress进程导致的:pidstat -u 5 1
平均负载
平均负载可以理解为:单位时间内,系统处于运行状态和不可中断状态的平均进程数,也就是平均活跃进程数
使用uptime命令可以看出linux平均负载的性能指标
[root@VM-0-2-centos /]# uptime
23:43:49 up 11 days, 1:47, 3 users, load average: 0.35, 1.94, 2.43
0.35,1.94,2.43分别表示最近1分钟,5分钟,15分钟的性能指标
top命令
-
Task:117total 进程总数
-
us:us, user : time running un-niced user processes 用户空间占用CPU百分比
-
sy, system : time running kernel processes 内核空间占用CPU百分比
-
ni, nice : time running niced user processes 用户进程空间内改变过优先级的进程占用CPU百分比
-
wa, IO-wait : time waiting for I/O completion 等待输入输出的CPU时间百分比
-
hi : time spent servicing hardware interrupts 硬件中断
-
si : time spent servicing software interrupts 软件中断
-
st : time stolen from this vm by the hypervisor
-
Mem:物理内存
-
Swap:虚拟内存
内存监控:free
free -m: 以MB为单位显示系统内存的使用情况