Repository: qpid-broker-j Updated Branches: refs/heads/master b39d49135 -> 1aac6abe0
QPID-7564: [Java Broker, Perftests] Add competing consumer test case to defaultTests.js Project: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/repo Commit: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/commit/1aac6abe Tree: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/tree/1aac6abe Diff: http://git-wip-us.apache.org/repos/asf/qpid-broker-j/diff/1aac6abe Branch: refs/heads/master Commit: 1aac6abe0763b09387166a100d00cddf4f0f2317 Parents: b39d491 Author: Lorenz Quack <lqu...@apache.org> Authored: Thu Sep 21 14:26:59 2017 +0100 Committer: Lorenz Quack <lqu...@apache.org> Committed: Thu Sep 21 15:04:00 2017 +0100 ---------------------------------------------------------------------- .../combined_competing_consumers_plain.chartdef | 48 ++++++++++++++++++++ perftests/etc/testdefs/defaultTests.js | 43 +++++++++++++++++- .../test/resources/jms-client/jndi.properties | 3 ++ .../resources/qpid-jms-client/jndi.properties | 3 ++ 4 files changed, 96 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/1aac6abe/perftests/etc/chartdefs/timeseries/combined_competing_consumers_plain.chartdef ---------------------------------------------------------------------- diff --git a/perftests/etc/chartdefs/timeseries/combined_competing_consumers_plain.chartdef b/perftests/etc/chartdefs/timeseries/combined_competing_consumers_plain.chartdef new file mode 100644 index 0000000..16a0313 --- /dev/null +++ b/perftests/etc/chartdefs/timeseries/combined_competing_consumers_plain.chartdef @@ -0,0 +1,48 @@ +# +# 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. +# + +chartType=TIMELINE +chartTitle=Competing Consumers AMQP ${qpid.charting.protocolVersion} plain +chartDescription=1 Auto-Ack Producer 10 Transacted Competing Consumers (no prefetch), transient, 1kB message, plain, ${qpid.charting.brokerVersionA} / ${qpid.charting.brokerVersionB} / ${qpid.charting.brokerVersionC} / ${qpid.charting.brokerVersionD} + +yAxisLowerBound=5000 +yAxisUpperBound=100000 + +xAxisTitle=Date +yAxisTitle=Messages Per Second + +series.1.statement=SELECT insertedTimestamp, throughputMessagesPerS FROM RESULTS WHERE participantName = 'All' AND testName = 'competing_consumers_plain' AND providerVersion LIKE '%${qpid.charting.brokerVersionA}%' AND protocolVersion = '${qpid.charting.protocolVersion}' +series.1.colourName=blue +series.1.shape=cross +series.1.legend=${qpid.charting.brokerVersionA} + +series.2.statement=SELECT insertedTimestamp, throughputMessagesPerS FROM RESULTS WHERE participantName = 'All' AND testName = 'competing_consumers_plain' AND providerVersion LIKE '%${qpid.charting.brokerVersionB}%' AND protocolVersion = '${qpid.charting.protocolVersion}' +series.2.colourName=red +series.2.shape=cross +series.2.legend=${qpid.charting.brokerVersionB} + +series.3.statement=SELECT insertedTimestamp, throughputMessagesPerS FROM RESULTS WHERE participantName = 'All' AND testName = 'competing_consumers_plain' AND providerVersion LIKE '%${qpid.charting.brokerVersionC}%' AND protocolVersion = '${qpid.charting.protocolVersion}' +series.3.colourName=dark_green +series.3.shape=cross +series.3.legend=${qpid.charting.brokerVersionC} + +series.4.statement=SELECT insertedTimestamp, throughputMessagesPerS FROM RESULTS WHERE participantName = 'All' AND testName = 'competing_consumers_plain' AND providerVersion LIKE '%${qpid.charting.brokerVersionD}%' AND protocolVersion = '${qpid.charting.protocolVersion}' +series.4.colourName=dark_yellow +series.4.shape=cross +series.4.legend=${qpid.charting.brokerVersionD} http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/1aac6abe/perftests/etc/testdefs/defaultTests.js ---------------------------------------------------------------------- diff --git a/perftests/etc/testdefs/defaultTests.js b/perftests/etc/testdefs/defaultTests.js index 2bd1098..6d9fa5c 100644 --- a/perftests/etc/testdefs/defaultTests.js +++ b/perftests/etc/testdefs/defaultTests.js @@ -106,6 +106,44 @@ function createTest(name, numberOfParticipantPairs, acknowledgeMode, deliveryMod return test; } +function createCompetingConsumerTest(name, numberOfParticipantPairs, transport) +{ + var destination = "testQueue_competing"; + var test = { + "_name": name, + "_queues": [{ + "_name": destination, + "_durable": true + }], + "_clients": [] + }; + + var connectionFactory; + if (transport.toLowerCase() === "plain") + { + connectionFactory = "connectionfactory_noprefetch"; + } + else if (transport.toLowerCase() === "ssl") + { + connectionFactory = "sslconnectionfactory_noprefetch"; + } + + test._clients.push({ + "_name": "producingClient", + "_connections": [createProducerConnection(0, connectionFactory, destination, ACKNOWLEDGE_MODE_AUTO_ACKNOWLEDGE, DELIVERY_MODE_TRANSIENT)] + }); + + for (var i = 0; i < numberOfParticipantPairs; i++) + { + test._clients.push({ + "_name": "consumingClient_" + i, + "_connections": [createConsumerConnection(i, connectionFactory, destination, ACKNOWLEDGE_MODE_SESSION_TRANSACTED)] + }); + } + + return test; +} + var jsonObject = { _tests: [ createTest("persistent_transaction_plain", @@ -137,7 +175,10 @@ var jsonObject = { numberOfParticipantPairs, ACKNOWLEDGE_MODE_SESSION_TRANSACTED, DELIVERY_MODE_TRANSIENT, - "SSL") + "SSL"), + createCompetingConsumerTest("competing_consumers_plain", + numberOfParticipantPairs, + "PLAIN") ] }; http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/1aac6abe/perftests/src/test/resources/jms-client/jndi.properties ---------------------------------------------------------------------- diff --git a/perftests/src/test/resources/jms-client/jndi.properties b/perftests/src/test/resources/jms-client/jndi.properties index 264c691..bdcc647 100644 --- a/perftests/src/test/resources/jms-client/jndi.properties +++ b/perftests/src/test/resources/jms-client/jndi.properties @@ -21,6 +21,9 @@ connectionfactory.connectionfactory = amqp://${perftests.messaging-user}:${perftests.messaging-password}@clientid/?brokerlist='${perftests.messaging-hostport-plain}' connectionfactory.sslconnectionfactory = amqp://${perftests.messaging-user}:${perftests.messaging-password}@clientid/?ssl='true'&brokerlist='${perftests.messaging-hostport-tls}' +connectionfactory.connectionfactory_noprefetch = amqp://${perftests.messaging-user}:${perftests.messaging-password}@clientid/?brokerlist='${perftests.messaging-hostport-plain}'&maxprefetch='0' +connectionfactory.sslconnectionfactory_noprefetch = amqp://${perftests.messaging-user}:${perftests.messaging-password}@clientid/?ssl='true'&brokerlist='${perftests.messaging-hostport-tls}'&maxprefetch='0' + queue.controllerqueue = controllerqueue jdbcDriverClass=org.apache.derby.jdbc.EmbeddedDriver http://git-wip-us.apache.org/repos/asf/qpid-broker-j/blob/1aac6abe/perftests/src/test/resources/qpid-jms-client/jndi.properties ---------------------------------------------------------------------- diff --git a/perftests/src/test/resources/qpid-jms-client/jndi.properties b/perftests/src/test/resources/qpid-jms-client/jndi.properties index 8c101f1..f83916c 100644 --- a/perftests/src/test/resources/qpid-jms-client/jndi.properties +++ b/perftests/src/test/resources/qpid-jms-client/jndi.properties @@ -21,6 +21,9 @@ connectionfactory.connectionfactory = amqp://${perftests.messaging-hostport-plain}/?jms.username=${perftests.messaging-user}&jms.password=${perftests.messaging-password}&jms.forceAsyncAcks=true connectionfactory.sslconnectionfactory = amqps://${perftests.messaging-hostport-tls}/?jms.username=${perftests.messaging-user}&jms.password=${perftests.messaging-password}&jms.forceAsyncAcks=true +connectionfactory.connectionfactory_noprefetch = amqp://${perftests.messaging-hostport-plain}/?jms.username=${perftests.messaging-user}&jms.password=${perftests.messaging-password}&jms.forceAsyncAcks=true&jms.prefetchPolicy.all=0 +connectionfactory.sslconnectionfactory_noprefetch = amqps://${perftests.messaging-hostport-tls}/?jms.username=${perftests.messaging-user}&jms.password=${perftests.messaging-password}&jms.forceAsyncAcks=true&jms.prefetchPolicy.all=0 + queue.controllerqueue = controllerqueue jdbcDriverClass=org.apache.derby.jdbc.EmbeddedDriver --------------------------------------------------------------------- To unsubscribe, e-mail: commits-unsubscr...@qpid.apache.org For additional commands, e-mail: commits-h...@qpid.apache.org