#!/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