diff options
Diffstat (limited to 'qpid/cpp/src/tests/qpid-cluster-benchmark')
| -rwxr-xr-x | qpid/cpp/src/tests/qpid-cluster-benchmark | 44 |
1 files changed, 30 insertions, 14 deletions
diff --git a/qpid/cpp/src/tests/qpid-cluster-benchmark b/qpid/cpp/src/tests/qpid-cluster-benchmark index 4408e63866..5f0e020475 100755 --- a/qpid/cpp/src/tests/qpid-cluster-benchmark +++ b/qpid/cpp/src/tests/qpid-cluster-benchmark @@ -7,9 +7,9 @@ # to you under the Apache License, Version 2.0 (the # "License"); you may not use this file except in compliance # with the License. You may obtain a copy of the License at -# +# # http://www.apache.org/licenses/LICENSE-2.0 -# +# # Unless required by applicable law or agreed to in writing, # software distributed under the License is distributed on an # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY @@ -19,21 +19,37 @@ # # Benchmark script for comparing cluster performance. -#PORT=":5555" -BROKER=`echo $HOSTS | awk '{print $1}'` # Single broker -BROKERS=`echo $HOSTS | sed "s/\>/$PORT/g;s/ /,/g"` # Broker URL list -COUNT=100000 -RATE=20000 # Rate to throttle senders for latency results -run_test() { echo $*; "$@"; echo; echo; echo; } -# Thruput, unshared queue -run_test qpid-cpp-benchmark --repeat 10 -b $BROKER --no-timestamp -m $COUNT +# Default values +PORT="5672" +BROKERS=`echo $HOSTS | sed "s/\>/:$PORT/g;s/ /,/g"` # Broker URL list +COUNT=10000 +FLOW=100 # Flow control limit on queue depth for latency. +REPEAT=10 +SCALE=10 -# Latency -run_test qpid-cpp-benchmark --repeat 10 -b $BROKER --connection-options '{tcp-nodelay:true}' -m `expr $COUNT / 2` --send-rate $RATE +while getopts "p:c:f:r:t:b:" opt; do + case $opt in + p) PORT=$OPTARG;; + c) COUNT=$OPTARG;; + f) FLOW=$OPTARG;; + r) REPEAT=$OPTARG;; + s) SCALE=$OPTARG;; + b) BROKERS=$OPTARG;; + *) echo "Unknown option"; exit 1;; + esac +done + +BROKER=`echo $HOSTS | sed 's/,.*//'` # First broker + +run_test() { echo $*; shift; "$@"; echo; echo; echo; } # Multiple pubs/subs connect via multiple brokers (active-active) -run_test qpid-cpp-benchmark --repeat 10 -b $BROKERS --no-timestamp --summarize -s10 -r10 -m `expr $COUNT / 10` +run_test "multi-host-thruput" qpid-cpp-benchmark --repeat $REPEAT -b $BROKERS --no-timestamp --summarize -s$SCALE -r$SCALE -m $COUNT # Multiple pubs/subs connect via single broker (active-passive) -run_test qpid-cpp-benchmark --repeat 10 -b $BROKER --no-timestamp --summarize -s10 -r10 -m `expr $COUNT / 10` +run_test "single-host-thruput" qpid-cpp-benchmark --repeat $REPEAT -b $BROKER --no-timestamp --summarize -s$SCALE -r$SCALE -m $COUNT + +# Latency +run_test "latency" qpid-cpp-benchmark --repeat $REPEAT -b $BROKER --connection-options '{tcp-nodelay:true}' -m $COUNT --flow-control $FLOW + |
