| #!/bin/bash |
| # |
| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # 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 |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| # |
| # Run the c++ or java topic test |
| |
| . `dirname $0`/env |
| |
| # Edit parameters here: |
| |
| # Big test: |
| # LISTENERS=10 |
| # MESSAGES=10000 |
| # BATCHES=20 |
| |
| LISTENERS=10 |
| MESSAGES=2000 |
| BATCHES=10 |
| |
| cppcmds() { |
| LISTEN_CMD=./topic_listener |
| PUBLISH_CMD="./topic_publisher -messages $MESSAGES -batches $BATCHES -subscribers $LISTENERS" |
| } |
| |
| javacmds() { |
| DEF=-Damqj.logging.level="error" |
| LISTEN_CMD="qpid-run $DEF org.apache.qpid.topic.Listener" |
| PUBLISH_CMD="qpid-run $DEF org.apache.qpid.topic.Publisher -messages $MESSAGES -batch $BATCHES -clients $LISTENERS" |
| } |
| |
| case $1 in |
| c) cppcmds ;; |
| j) javacmds ;; |
| *) cppcmds ;; |
| esac |
| |
| for ((i=$LISTENERS ; i--; )); do |
| $LISTEN_CMD > /dev/null 2>&1 & |
| done |
| sleep 1 |
| echo $PUBLISH_CMD $OPTIONS |
| |
| STATS=~/bin/topictest.times |
| echo "---- topictest `date`" >> $STATS |
| $PUBLISH_CMD $OPTIONS | tee -a $STATS |