You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@qpid.apache.org by ar...@apache.org on 2007/11/29 13:53:54 UTC

svn commit: r599424 - /incubator/qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/client/perf/MessageConsumerTest.java

Author: arnaudsimon
Date: Thu Nov 29 04:53:54 2007
New Revision: 599424

URL: http://svn.apache.org/viewvc?rev=599424&view=rev
Log:
added interval thoughput calculation

Modified:
    incubator/qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/client/perf/MessageConsumerTest.java

Modified: incubator/qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/client/perf/MessageConsumerTest.java
URL: http://svn.apache.org/viewvc/incubator/qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/client/perf/MessageConsumerTest.java?rev=599424&r1=599423&r2=599424&view=diff
==============================================================================
--- incubator/qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/client/perf/MessageConsumerTest.java (original)
+++ incubator/qpid/trunk/qpid/java/perftests/src/main/java/org/apache/qpid/client/perf/MessageConsumerTest.java Thu Nov 29 04:53:54 2007
@@ -26,6 +26,8 @@
     private long _gracePeriod = 5 * 60 * 1000;
     long _startTime;
     long totalMsgCount;
+    long _totalMsgCount;
+    double _timeElapsed = 0;
 
     public void start() throws Exception
     {
@@ -107,6 +109,9 @@
         try
         {
             FileWriter _logFile = new FileWriter(_logFileName + ".csv", true);
+            long newTotalMsgCount = 0;
+            long totalMsgCountThisInterval = 0;
+
             for (Integer id : _consumers.keySet())
             {
                 JMSConsumer prod = _consumers.get(id);
@@ -116,36 +121,43 @@
                 buf.append(d.getTime()).append(",");
                 buf.append(prod.getCurrentMessageCount()).append("\n");
                 _logFile.write(buf.toString());
-                totalMsgCount = totalMsgCount + prod.getCurrentMessageCount();
+                newTotalMsgCount = newTotalMsgCount + prod.getCurrentMessageCount();
+               totalMsgCountThisInterval = newTotalMsgCount - _totalMsgCount;
+               _totalMsgCount = newTotalMsgCount;
             }
             _logFile.close();
 
-            FileWriter _memoryLog = new FileWriter(_logFileName + "_memory.csv", true);
-            StringBuffer buf = new StringBuffer("JMSSyncConsumer,");
+            FileWriter _memoryLog = new FileWriter(_logFileName + "_memory.csv",true);
+            StringBuffer buf = new StringBuffer("JMSProducer,");
             Date d = new Date(System.currentTimeMillis());
+            double totaltime = d.getTime() - _startTime;
+            _timeElapsed = totaltime - _timeElapsed;
             buf.append(df.format(d)).append(",");
             buf.append(d.getTime()).append(",");
-            buf.append(totalMsgCount).append(",");
-            buf.append(Runtime.getRuntime().totalMemory() - Runtime.getRuntime().freeMemory()).append("\n");
+            buf.append(_totalMsgCount).append(",");
+            buf.append(Runtime.getRuntime().totalMemory() -Runtime.getRuntime().freeMemory()).append("\n");
+            buf.append("\n");
+            buf.append("Throughput: total " + (_totalMsgCount /totaltime)*1000 + " msg/s;  this interval: "  +  (totalMsgCountThisInterval/_timeElapsed)*1000 + " msg/s");
             _memoryLog.write(buf.toString());
             _memoryLog.close();
+            System.out.println(buf);
             if (printSummary)
             {
-                double totaltime = d.getTime() - _startTime;
-                double dCount = totalMsgCount;
-                double ratio = (dCount / totaltime) * 1000;
-                FileWriter _summaryLog = new FileWriter(_logFileName + "_Summary", true);
-                buf = new StringBuffer("MessageConsumerTest \n Test started at : ");
+                double dCount = _totalMsgCount;
+                double ratio = (dCount/totaltime)*1000;
+                FileWriter _summaryLog = new FileWriter(_logFileName + "_Summary",true);
+                buf = new StringBuffer("MessageProducerTest \n Test started at : ");
                 buf.append(df.format(new Date(_startTime))).append("\n Test finished at : ");
                 d = new Date(System.currentTimeMillis());
                 buf.append(df.format(d)).append("\n Total Time taken (ms):");
-                buf.append(totaltime).append("\n Total messages received:");
-                buf.append(totalMsgCount).append("\n Consumer rate:");
+                buf.append(totaltime).append("\n Total messages sent:");
+                buf.append(_totalMsgCount).append("\n Producer rate:");
                 buf.append(ratio).append("\n");
                 _summaryLog.write(buf.toString());
                 System.out.println("---------- Test Ended -------------");
                 _summaryLog.close();
             }
+            _timeElapsed = totaltime;
         }
         catch (Exception e)
         {