Author: fhanik
Date: Tue Feb 28 05:17:46 2006
New Revision: 381651
URL: http://svn.apache.org/viewcvs?rev=381651&view=rev
Log:
Fixed measurement, not super accurate, but it gives a hint
Modified:
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/demos/LoadTest.java
Modified:
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/demos/LoadTest.java
URL:
http://svn.apache.org/viewcvs/tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/demos/LoadTest.java?rev=381651&r1=381650&r2=381651&view=diff
==============================================================================
---
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/demos/LoadTest.java
(original)
+++
tomcat/container/tc5.5.x/modules/groupcom/src/share/org/apache/catalina/tribes/demos/LoadTest.java
Tue Feb 28 05:17:46 2006
@@ -51,14 +51,39 @@
static int messageSize = 0;
public static long messagesSent = 0;
- public static long messageSendTime = 0;
+ public static long messageStartSendTime = 0;
+ public static long messageEndSendTime = 0;
+ public static int threadCount = 0;
+
+ public static synchronized void startTest() {
+ threadCount++;
+ if ( messageStartSendTime == 0 ) messageStartSendTime =
System.currentTimeMillis();
+ }
+
+ public static synchronized void endTest() {
+ threadCount--;
+ if ( messageEndSendTime == 0 && threadCount==0 ) messageEndSendTime =
System.currentTimeMillis();
+ }
+
- public static synchronized long addSendStats(long count, long time) {
+ public static synchronized long addSendStats(long count) {
messagesSent+=count;
- messageSendTime+=time;
return 0l;
}
+ private static void printSendStats(long counter, int messageSize) {
+ float cnt = (float)counter;
+ float size = (float)messageSize;
+ float time = (float)(System.currentTimeMillis()-messageStartSendTime)
/ 1000f;
+ log.info("****SEND STATS-"+Thread.currentThread().getName()+"*****"+
+ "\n\tMessage count:"+counter+
+ "\n\tTotal bytes :"+(long)(size*cnt)+
+ "\n\tTotal seconds:"+(time)+
+ "\n\tBytes/second :"+(size*cnt/time)+
+ "\n\tMBytes/second:"+(size*cnt/time/1024f/1024f));
+ }
+
+
public LoadTest(ManagedChannel channel,
boolean send,
@@ -83,8 +108,9 @@
long counter = 0;
LoadMessage msg = new LoadMessage();
int messageSize = LoadTest.messageSize;
- long sendTime = 0;
+
try {
+ startTest();
while (counter < msgCount) {
if (channel.getMembers().length == 0 || (!send)) {
synchronized (mutex) {
@@ -97,12 +123,10 @@
} else {
try {
msg.setMsgNr((int)++counter);
- long start = System.currentTimeMillis();
if (debug) {
printArray(msg.getMessage());
}
channel.send(null, msg);
- sendTime += (System.currentTimeMillis() - start);
if ( pause > 0 ) {
if ( debug) System.out.println("Pausing sender for
"+pause+" ms.");
Thread.sleep(pause);
@@ -117,31 +141,22 @@
}
if ( (counter % statsInterval) == 0 && (counter > 0)) {
//add to the global counter
- //counter = sendTime = addSendStats(counter,sendTime);
+ counter = addSendStats(counter);
//print from the global counter
//printSendStats(LoadTest.messagesSent,
LoadTest.messageSize, LoadTest.messageSendTime);
- printSendStats(counter, LoadTest.messageSize, sendTime);
+ printSendStats(LoadTest.messagesSent,
LoadTest.messageSize);
}
}
}catch ( Exception x ) {
x.printStackTrace();
- printSendStats(counter, messageSize, sendTime);
+ printSendStats(LoadTest.messagesSent, LoadTest.messageSize);
}
+ endTest();
}
- private void printSendStats(long counter, int messageSize, long sendTime) {
- float cnt = (float)counter;
- float size = (float)messageSize;
- float time = (float)sendTime / 1000;
- log.info("****SEND STATS-"+Thread.currentThread().getName()+"*****"+
- "\n\tMessage count:"+counter+
- "\n\tTotal bytes :"+(long)(size*cnt)+
- "\n\tTotal seconds:"+(time)+
- "\n\tBytes/second :"+(size*cnt/time)+
- "\n\tMBytes/second:"+(size*cnt/time/1024f/1024f));
- }
+
/**
* memberAdded
@@ -169,7 +184,7 @@
}
public boolean accept(Serializable msg, Member mbr){
- return (msg instanceof LoadMessage);
+ return (msg instanceof LoadMessage) || (msg instanceof ByteMessage);
}
public void messageReceived(Serializable msg, Member mbr){
@@ -180,12 +195,13 @@
}
}
- if ( msg instanceof ByteMessage ) {
+ if ( msg instanceof ByteMessage && !(msg instanceof LoadMessage)) {
LoadMessage tmp = new LoadMessage();
tmp.setMessage(((ByteMessage)msg).getMessage());
msg = tmp;
tmp = null;
}
+
bytesReceived+=((LoadMessage)msg).getMessage().length;
messagesReceived++;
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]