#!/bin/bash
source functions.sh
if [ "$(whoami)" != 'root' ]; then
echo "You have no permission to run $0 as non-root user."
exit 1;
fi
JAVA_OPTS=${JAVA_OPTS:-"-Xms4096m -Xmx6124m"}
host="localhost"
versions="uncached developers aplcache memoizeit"
applications="*"
if [[ ! -z $1 ]]; then
host=$1
if [[ ! -z $2 ]]; then
versions=$2
if [[ ! -z $3 ]]; then
applications=$3
fi
fi
fi
echo "$(date '+%F %T') Reducing in host $host for the applications $applications among the versions $versions"
for version in $versions; do
version=${version%/}
if [[ $applications = "*" ]]; then
existing_applications=$(echo applications/$version/*/)
else
existing_applications=$applications
fi
if [[ ! -f applications/output/requests-handled.csv ]]; then
echo 'application,version,users,execution,time,requests' > applications/output/requests-handled.csv
if [[ $host = "localhost" ]]; then
echo 'application,version,users,name,identifier,event,amount' > applications/output/hits-distribution.csv
fi
fi
for application in $existing_applications; do
application=${application%/}
for user in 1 5 25; do
for execution in {1..10}; do
echo "$(date '+%F %T') Reducing requests of $application-$version with $user users and execution $execution"
java $JAVA_OPTS -jar adapters/RequestsSimulator/target/RequestsSimulator-1.0.jar --throughput=applications/output/$application-$version-${user}user-${execution}execution-requests --reduce=applications/output/requests-handled.csv --prefix=$application,$version,$user,$execution,
done
echo "$(date '+%F %T') Reducing cachemetrics of $application-$version with $user users"
command="java $JAVA_OPTS -jar adapters/Cache/target/Cache-1.0.jar applications/output/$application-$version-${user}user-cache applications/output/hits-distribution.csv $application,$version,$user,"
execute "$host" "$command"
done
done
done