⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 runbench

📁 ACE自适配通信环境(ADAPTIVE Communication Environment)是可以自由使用、开放源码的面向对象(OO)框架(Framework)
💻
字号:
#!/bin/sh# /project/cvs-repository/ACE_wrappers-repository/apps/JAWS/clients/WebSTONE/bin/runbench,v 1.1 1997/07/07 17:45:46 sumedh Exp# set -xset +x[ -n "$WEBSTONEROOT" ] || WEBSTONEROOT=`pwd`/../case $# in  1)     FILELIST=$1     ;;  *)     FILELIST=$WEBSTONEROOT/conf/filelist     ;;esac# load configurations. $WEBSTONEROOT/conf/testbed[ -n "$DEBUG" ] && set +x# check variables[ -n "$ITERATIONS" ] || ITERATIONS="1"[ -n "$MINCLIENTS" ] || MINCLIENTS="1"[ -n "$MAXCLIENTS" ] || MAXCLIENTS="1"[ -n "$CLIENTINCR" ] || CLIENTINCR="1"[ -n "$TIMEPERRUN" ] || TIMEPERRUN="1"# don't care about PROXYSERVER[ -n "$SERVER" ] || SERVER="www"[ -n "$PORTNO" ] || PORTNO="80"# [ -n "$SERVERINFO" ] || SERVERINFO="uname -a"# OSTUNINGFILES# WEBSERVERDIR# WEBDOCDIR# WEBSERVERTUNINGFILES[ -n "$CLIENTS" ] || CLIENTS="localhost"[ -n "$CLIENTACCOUNT" ] || CLIENTACCOUNT=$USER[ -n "$CLIENTPASSWORD" ] || CLIENTPASSWORD=$CLIENTACCOUNT# [ -n "$CLIENTINFO" ] || CLIENTINFO="uname -a"[ -n "$TMPDIR" ] || TMPDIR="/tmp"[ -n "$RCP" ] || RCP="rcp"[ -n "$RSH" ] || RSH="rsh"export ITERATIONS MINCLIENTS MAXCLIENTS CLIENTINCR TIMEPERRUN export SERVER PORTNO SERVERINFO export CLIENTS CLIENTACCOUNT CLIENTPASSWORD CLIENTINFOexport TMPDIR RCP RSHecho "Clients: " $CLIENTS## Estimate run time#NUMCLIENTHOSTS=`echo $CLIENTS | wc -w`TRIALS=`expr 1 + \( $MAXCLIENTS - $MINCLIENTS \) / $CLIENTINCR`RUNTIME=`expr 60 \* $ITERATIONS \* $TRIALS \* $TIMEPERRUN`RUNTIME=`expr $RUNTIME + $TRIALS \* \( $MAXCLIENTS + $MINCLIENTS \) \ / \( 2 \* $NUMCLIENTHOSTS \)`echo "Estimated run time:" `expr $RUNTIME / 3600` "hours" \ `expr $RUNTIME % 3600 / 60` "minutes" ## Checking for valid set of benchmark files to retrieve##if [ -z "$PROXYSERVER" ]#then#  echo "Checking for a valid set of benchmark files"#  CHECKLISTTMP=$TMPDIR/webstone-checkfilelist.$$#  rm -f $CHECKFILELISTTMP#  $WEBSTONEROOT/bin/checkfilelist $SERVER $PORTNO $FILELIST > $CHECKLISTTMP 2>&1#  if [ `grep -c ' 4[0-9][0-9] '< $CHECKLISTTMP` -gt 0 ]#  then#    echo "ERROR: not all files in filelist are on server:"#    echo "----- checkfilelist results -----"#    cat $CHECKLISTTMP#    echo "----- checkfilelist results -----"#    rm  -f $CHECKLISTTMP#    exit 1#  else#    echo "OK: All files found"#  fi#  rm -f $CHECKLISTTMP#fi# end if $PROXYSERVER## distribute webclient binary#for i in $CLIENTSdo	$RCP $WEBSTONEROOT/bin/webclient $i:$TMPDIR #/usr/local/bindone# BEGIN iterationsJ=1while [ $J -le $ITERATIONS ]do  NUMCLIENTS=$MINCLIENTS  while [ $NUMCLIENTS -le $MAXCLIENTS ]  do    echo "***** Iteration $J, Total clients "`expr $NUMCLIENTS`" **********"    date    TIMESTAMP=`date +"%y%m%d_%H%M"`    LOGDIR=$WEBSTONEROOT/bin/runs/$TIMESTAMP        #    # nuke debug files    #    for client in $CLIENTS    do      $RSH $client "rm /tmp/webstone-debug*" > /dev/null 2>&1    done        mkdir -p $LOGDIR    rm -f $LOGDIR/config    touch $LOGDIR/config    CLIENTSPERHOST=`expr $NUMCLIENTS / $NUMCLIENTHOSTS`    EXTRACLIENTS=`expr $NUMCLIENTS % $NUMCLIENTHOSTS`        for i in $CLIENTS    do      if [ $EXTRACLIENTS -gt 0 ]      then	echo "$i $CLIENTACCOUNT $CLIENTPASSWORD `expr $CLIENTSPERHOST + 1`" \	 >> $LOGDIR/config	EXTRACLIENTS=`expr $EXTRACLIENTS - 1`      else	echo "$i $CLIENTACCOUNT $CLIENTPASSWORD $CLIENTSPERHOST" \	 >> $LOGDIR/config      fi    done    cp $FILELIST $LOGDIR/`basename $FILELIST`        #    # Put test configuration files on clients    #    for i in $CLIENTS localhost    do      $RSH $i "rm -f $TMPDIR/config $TMPDIR/`basename $FILELIST`"      $RCP $LOGDIR/config $i:$TMPDIR/config      $RCP $LOGDIR/`basename $FILELIST` $i:$TMPDIR/filelist    done        #    # Get starting configuration and stats from each participant    #    $RSH $SERVER "$SERVERINFO" > $LOGDIR/hardware.$SERVER 2>&1    for i in $CLIENTS    do      $RSH $i "$CLIENTINFO" > $LOGDIR/hardware.$i 2>&1    done        # set -x    for i in $OSTUNINGFILES $WEBSERVERTUNINGFILES    do      $RCP $SERVER:$i $LOGDIR    done    set +x        #    # Run benchmark    #    date    CMD="$WEBSTONEROOT/bin/webmaster -v -u  $TMPDIR/filelist"    CMD=$CMD" -f $TMPDIR/config -l $TIMEPERRUN"    [ -n "$SERVER" ] && CMD=$CMD" -w $SERVER"    [ -n "$PORTNO" ] && CMD=$CMD" -p $PORTNO"    [ -n "$PROXYSERVER" ] && CMD=$CMD" -P $PROXYSERVER"    [ -n "$DEBUG" ] && CMD=$CMD" -d"    echo $CMD    # dump environment into $LOGDIR    rm -rf $LOGDIR/controller.env    env > $LOGDIR/controller.env        $CMD | tee $LOGDIR/run        #    # Get ending configuration and stats from each participant    #    date    #for i in $SERVER $CLIENTS    #do    #$WEBSTONEROOT/bin/getstats $i > $LOGDIR/end.$i 2>&1    #done    #date    NUMCLIENTS=`expr $NUMCLIENTS + $CLIENTINCR`  done  # while NUMCLIENTS  J=`expr $J + 1`done# while J# end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -