[jboss-cvs] JBoss Messaging SVN: r4337 - in trunk/examples/jms: src/org/jboss/jms/example and 1 other directories.
jboss-cvs-commits at lists.jboss.org
jboss-cvs-commits at lists.jboss.org
Thu May 29 08:34:03 EDT 2008
Author: jmesnil
Date: 2008-05-29 08:34:03 -0400 (Thu, 29 May 2008)
New Revision: 4337
Modified:
trunk/examples/jms/build.xml
trunk/examples/jms/src/org/jboss/jms/example/PerfExample.java
trunk/examples/jms/src/org/jboss/jms/util/PerfParams.java
Log:
JBMESSAGING-1343 - Some more tweaks to PerfExample:
- make the message size configurable using message.size (1024 bytes by default)
Modified: trunk/examples/jms/build.xml
===================================================================
--- trunk/examples/jms/build.xml 2008-05-29 11:01:10 UTC (rev 4336)
+++ trunk/examples/jms/build.xml 2008-05-29 12:34:03 UTC (rev 4337)
@@ -43,6 +43,8 @@
<!--perf props-->
<property name="message.count" value="200000"/>
<property name="message.warmup.count" value="10000"/>
+ <!-- in bytes -->
+ <property name="message.size" value="1024"/>
<property name="delivery.mode" value="NON_PERSISTENT"/>
<property name="sess.trans" value="false"/>
<property name="sess.ackmode" value="DUPS_OK"/>
@@ -118,6 +120,7 @@
* --------- ----------- ------- -------
* message.count number of messages 200000 ${message.count}
* message.warmup.count number of messages to warm up 10000 ${message.warmup.count}
+* message.size message size (in bytes) 1024 ${message.size}
* delivery.mode PERSISTENT/NON_PERSISTENT NON_PERSISTENT ${delivery.mode}
* sess.trans Is session transacted false ${sess.trans}
* sess.trans.size batch size to commit 1000 ${sess.trans.size}
@@ -141,6 +144,7 @@
<arg value="-l"/>
<arg value="${message.count}"/>
<arg value="${message.warmup.count}"/>
+ <arg value="${message.size}"/>
<arg value="${delivery.mode}"/>
<arg value="${sess.trans}"/>
<arg value="${sess.trans.size}"/>
@@ -163,6 +167,7 @@
<arg value="-s"/>
<arg value="${message.count}"/>
<arg value="${message.warmup.count}"/>
+ <arg value="${message.size}"/>
<arg value="${delivery.mode}"/>
<arg value="${sess.trans}"/>
<arg value="${sess.trans.size}"/>
Modified: trunk/examples/jms/src/org/jboss/jms/example/PerfExample.java
===================================================================
--- trunk/examples/jms/src/org/jboss/jms/example/PerfExample.java 2008-05-29 11:01:10 UTC (rev 4336)
+++ trunk/examples/jms/src/org/jboss/jms/example/PerfExample.java 2008-05-29 12:34:03 UTC (rev 4337)
@@ -68,17 +68,19 @@
int noOfMessages = Integer.parseInt(args[1]);
int noOfWarmupMessages = Integer.parseInt(args[2]);
- int deliveryMode = args[3].equalsIgnoreCase("persistent") ? DeliveryMode.PERSISTENT : DeliveryMode.NON_PERSISTENT;
- boolean transacted = Boolean.parseBoolean(args[4]);
- int transactionBatchSize = Integer.parseInt(args[5]);
- boolean dupsok = "DUPS_OK".equalsIgnoreCase(args[6]);
- boolean drainQueue = Boolean.parseBoolean(args[7]);
- String queueLookup = args[8];
- String connectionFactoryLookup = args[9];
+ int messageSize = Integer.parseInt(args[3]);
+ int deliveryMode = args[4].equalsIgnoreCase("persistent") ? DeliveryMode.PERSISTENT : DeliveryMode.NON_PERSISTENT;
+ boolean transacted = Boolean.parseBoolean(args[5]);
+ int transactionBatchSize = Integer.parseInt(args[6]);
+ boolean dupsok = "DUPS_OK".equalsIgnoreCase(args[7]);
+ boolean drainQueue = Boolean.parseBoolean(args[8]);
+ String queueLookup = args[9];
+ String connectionFactoryLookup = args[10];
PerfParams perfParams = new PerfParams();
perfParams.setNoOfMessagesToSend(noOfMessages);
perfParams.setNoOfWarmupMessages(noOfWarmupMessages);
+ perfParams.setMessageSize(messageSize);
perfParams.setDeliveryMode(deliveryMode);
perfParams.setSessionTransacted(transacted);
perfParams.setTransactionBatchSize(transactionBatchSize);
@@ -122,10 +124,10 @@
init(perfParams.isSessionTransacted(), perfParams.getQueueLookup(), perfParams.getConnectionFactoryLookup(), perfParams.isDupsOk());
start = System.currentTimeMillis();
log.info("warming up by sending " + perfParams.getNoOfWarmupMessages() + " messages");
- sendMessages(perfParams.getNoOfWarmupMessages(), perfParams.getTransactionBatchSize(), perfParams.getDeliveryMode(), perfParams.isSessionTransacted(), false);
+ sendMessages(perfParams.getNoOfWarmupMessages(), perfParams.getMessageSize(), perfParams.getTransactionBatchSize(), perfParams.getDeliveryMode(), perfParams.isSessionTransacted(), false);
log.info("warmed up");
start = System.currentTimeMillis();
- sendMessages(perfParams.getNoOfMessagesToSend(), perfParams.getTransactionBatchSize(), perfParams.getDeliveryMode(), perfParams.isSessionTransacted(), true);
+ sendMessages(perfParams.getNoOfMessagesToSend(), perfParams.getMessageSize(), perfParams.getTransactionBatchSize(), perfParams.getDeliveryMode(), perfParams.isSessionTransacted(), true);
long end = System.currentTimeMillis();
displayAverage(perfParams.getNoOfMessagesToSend(), start, end);
}
@@ -149,15 +151,14 @@
}
}
- private void sendMessages(final int numberOfMessages, final int txBatchSize, final int deliveryMode,
- final boolean transacted, final boolean display) throws JMSException
+ private void sendMessages(int numberOfMessages, int messageSize, int txBatchSize, int deliveryMode, boolean transacted, boolean display) throws JMSException
{
MessageProducer producer = session.createProducer(queue);
producer.setDisableMessageID(true);
producer.setDisableMessageTimestamp(true);
producer.setDeliveryMode(deliveryMode);
BytesMessage bytesMessage = session.createBytesMessage();
- byte[] payload = new byte[1024];
+ byte[] payload = new byte[messageSize];
bytesMessage.writeBytes(payload);
final int modulo = numberOfMessages / 10;
Modified: trunk/examples/jms/src/org/jboss/jms/util/PerfParams.java
===================================================================
--- trunk/examples/jms/src/org/jboss/jms/util/PerfParams.java 2008-05-29 11:01:10 UTC (rev 4336)
+++ trunk/examples/jms/src/org/jboss/jms/util/PerfParams.java 2008-05-29 12:34:03 UTC (rev 4337)
@@ -36,6 +36,7 @@
private int noOfMessagesToSend = 1000;
private int noOfWarmupMessages;
+ private int messageSize = 1024; // in bytes
private int deliveryMode = DeliveryMode.NON_PERSISTENT;
private boolean isSessionTransacted = false;
private int transactionBatchSize = 5000;
@@ -64,6 +65,16 @@
this.noOfWarmupMessages = noOfWarmupMessages;
}
+ public int getMessageSize()
+ {
+ return messageSize;
+ }
+
+ public void setMessageSize(int messageSize)
+ {
+ this.messageSize = messageSize;
+ }
+
public int getDeliveryMode()
{
return deliveryMode;
@@ -136,11 +147,12 @@
public String toString()
{
- return "message to send = " + noOfMessagesToSend + ", DeliveryMode = " +
- (deliveryMode == DeliveryMode.PERSISTENT ? "PERSISTENT" : "NON_PERSISTENT") + ", session transacted = " + isSessionTransacted +
- (isSessionTransacted ? ", transaction batch size = " + transactionBatchSize : "") + ", drain queue = " + drainQueue +
- ", queue lookup = " + queueLookup + ", connection factory lookup = " + connectionFactoryLookup +
- ", Session Acknowledge mode = " + (dupsOk ? "DUPS_OK_ACKNOWLEDGE" : "AUTO_ACKNOWLEDGE");
+ return "message to send = " + noOfMessagesToSend + ", messages to warm up = " + noOfWarmupMessages + ", message size = " + messageSize +
+ ", DeliveryMode = " + (deliveryMode == DeliveryMode.PERSISTENT ? "PERSISTENT" : "NON_PERSISTENT") +
+ ", session transacted = " + isSessionTransacted + (isSessionTransacted ? ", transaction batch size = " + transactionBatchSize : "") +
+ ", drain queue = " + drainQueue +
+ ", queue lookup = " + queueLookup + ", connection factory lookup = " + connectionFactoryLookup +
+ ", Session Acknowledge mode = " + (dupsOk ? "DUPS_OK_ACKNOWLEDGE" : "AUTO_ACKNOWLEDGE");
}
More information about the jboss-cvs-commits
mailing list