webtest.sh 很不錯的WEB服務器壓力測試腳本

發表于:2012-04-16來源:linux安全網作者:zhaoyun00點擊數: 標簽:壓力測試
#!/bin/bash ################################################################################# # 說 明 # 1、下載耗時測試 # 2、多線程測試

  #!/bin/bash #################################################################################

  # 說 明

  # 1、下載耗時測試

  # 2、多線程測試

  #

  # 使用方法: ./webtest

  # 使用本腳本程序,可進程對網關web進行壓力測試,測試

  # 功能主要包括:

  # 1、對自身機器的壓力測試

  # 2、對其他機器的壓力測試

  #

  ################################################################################### ######################################自定義部分####################################

  #

  # 參數簡介:

  # SERVER為配置要測試的機器IP地址

  # NAME定義設備的名稱

  # GRAPH定義是否生成折線圖的參數文件

  # VALUE此值為定義對下載速度測試的次數

  # TIME 配置是否開啟長時間測試,不間斷測試

  # MODE 配置本機器擔當的角色

  #

  ##################################################################################### #要測試的URL地址,也可寫ftp的。

  URL=https://192.168.0.133/wget.jsp

  export URL #服務器標識

  NAME=lanse #設置是否生成圖表數據

  #GRAPH=OFF

  GRAPH=ON #設置下載速度測試的次數;

  #如果在SERVER端配置此參數后,客戶端無法同步,可以tailf test.logfor;

  #當wget到這個數值時,再在客戶端執行腳本。如果不需要可以將此處設置為0;

  #SC模式不受其影響

  VALUE=0 #VALUE=5000 #長時間壓力測試單位(分鐘);

  #配置TIME小于MAXTIME為開啟長時間壓力測試。如果相等為不開啟。 MAXTIME=6000

  TIME=6000 #設置模式,分(SC/SERVER/CLIENT)

  #SC 即是客戶端模式,又是服務器模式,主要用于自壓測試;

  #SERVER 主要用來測試別的設備;

  #CLIENT 當作客戶端來用,主要配合另一臺SERVER對自己的壓力測試來提取系統資源信息。 #MODE=CLIENT

  MODE=SERVER

  #MODE=SC #配置壓力級別, 分0/1/2/3, 4個級別,級別越高,壓力越小, 默認0為最大壓力;

  #適合穩定性測試。 LEVEL=0

  #LEVEL=1

  #LEVEL=2

  #LEVEL=3 #配置停止幾秒后增加一個線程。 SPACE=3 #配置本次壓力的測試,一共下載多少次,用來精確分析數據,最好不要與長時間同時配置;

  #主要可以得到對不同設備測試,下載所用時間,成功率,失敗率;

  #如果同時配置,那個先執行完就結束進程;

  #配置NUMBER小于MAXNUMBER為開啟狀態。 MAXNUMBER=9000000

  NUMBER=3000

  ###########################程序運行部分########################################

  >file

  >startfail

  >test.logfor

  echo 2 >sta

  date +%s > time

  echo 2 > whstat

  >OK

  >test.logwhile

  >graph

  >established #1^$#

  if [ $MODE = SC -o $MODE = SERVER ] ; then echo 'time=`date +"%Y-%m-%d %H:%M:%S"`' > test.sh

  echo "while [ 1 ] " >> test.sh

  echo "do" >> test.sh

  echo "wget $URL -c -q -t 3 -T 5 --no-check-certificate" >>test.sh

  echo ' if [ $? -eq 0 ] ; then ' >>test.sh

  echo ' echo $time wget ok >> test.logwhile ' >>test.sh

  echo " else " >> test.sh

  echo ' echo $time wget fail >> test.logwhile ' >>test.sh

  echo " fi" >>test.sh

  if [ $LEVEL -eq 1 ] ; then

  echo "sleep 1 " >> test.sh

  fi

  if [ $LEVEL -eq 2 ] ; then

  echo "sleep 2 " >> test.sh

  fi

  if [ $LEVEL -eq 3 ] ; then

  echo " sleep 3 " >> test.sh

  fi

  echo "done" >> test.sh

  chmod a+x test.sh

  for ((i=0;i<=$VALUE;i++))

  do

  #2^#

  wget $URL -c -q -t 3 -T 5 --no-check-certificate

  if [ $? -eq 0 ] ; then

  echo $time wget ok $i >> test.logfor

  else

  echo $time wget fail $i >> test.logfor

  fi

  #2$#

  done

  T=`cat time`

  N=`date +%s `

  S=`echo "$N-$T" | bc `

  M=`echo "scale=1;$S/60"|bc |awk -F. '{print $1}'`

  MS=`echo "scale=1;$S/60"|bc |awk -F. '{print $2*0.01*60}'|awk -F. '{print $1}'`

  echo \ ; echo \ >> file

  echo "當前模式為 【 $MODE 】 模式" >> file

  echo \ ; echo \ >> file

  echo "下載速度測試結果:" >>file

  if [ $S -lt 60 ] ; then

  echo \ ; echo \ >> file

  echo "本次下載用了$S 秒" >>file

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97