Linux服务器CPU压力测试(本人亲测)

二:CPU的测试方法

多窗口执行该语句,然后查看cpu使用情况

方式1:写一个高循环脚本

 

while [ 1 ]

do

echo 1 >> /dev/null

done

方式2:模拟用户不间断的访问

多窗口执行该语句,然后查看cpu使用情况,不间断的刷新访问web服务器  

for i in $(seq 2000) ;do curl http://127.0.0.1:8080 ; done

 

方式3:模拟并发进程,占用cpu资源

参考博客

https://blog.csdn.net/newbietao/article/details/79940495?depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1&utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromBaidu-1

 

#!/bin/bash

# 并发运行的最佳实践

# 总进程数

Sp=2500

# 并发数,并发数过大可能造成系统崩溃

Qp=250

# 存放进程的队列

Qarr=();

# 运行进程数

run=0

# 将进程的添加到队列里的函数

function push() {

Qarr=(${Qarr[@]} $1)

run=${#Qarr[@]}

}

# 检测队列里的进程是否运行完毕

function check() {

oldQ=(${Qarr[@]})

Qarr=()

for p in "${oldQ[@]}";do

if [[ -d "/proc/$p" ]];then

Qarr=(${Qarr[@]} $p)

fi

done

run=${#Qarr[@]}

}

 

# main

for((i=0; i<$Sp; i++));do

#for i in `seq 500000`; do curl -o /dev/null -s -w %{http_code}:%{time_total} http://www.baidu.com ;echo " "; done

echo "running $i "

sleep 3 &

push $!

while [[ $run -gt $Qp ]];do

check

sleep 0.1

done

done

echo -e "time-consuming: $SECONDS seconds" #显示脚本执行耗时

4:cpu使用率测试

    在执行脚本后,进行测试,可以在shell中开多个窗口执行脚本,并发进程,抢占cpu资源

    间隔60秒采集一次,共计采集10次

    sar -u 60 10

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章