35
35
36
36
37
37
public class PerfTest {
38
-
38
+
39
39
public static void main (String [] args ) {
40
40
Options options = getOptions ();
41
41
CommandLineParser parser = new GnuParser ();
@@ -47,7 +47,7 @@ public static void main(String[] args) {
47
47
System .exit (0 );
48
48
}
49
49
String testID = new SimpleDateFormat ("HHmmss-SSS" ).format (Calendar .
50
- getInstance ().getTime ());
50
+ getInstance ().getTime ());
51
51
testID = strArg (cmd , 'd' , "test-" +testID );
52
52
String exchangeType = strArg (cmd , 't' , "direct" );
53
53
String exchangeName = strArg (cmd , 'e' , exchangeType );
@@ -79,1
10000
2 +79,12 @@ public static void main(String[] args) {
79
79
80
80
//setup
81
81
PrintlnStats stats = new PrintlnStats (testID ,
82
- 1000L * samplingInterval ,
83
- producerCount > 0 ,
84
- consumerCount > 0 ,
85
- (flags .contains ("mandatory" ) ||
86
- flags .contains ("immediate" )),
87
- confirm != -1 );
82
+ 1000L * samplingInterval ,
83
+ producerCount > 0 ,
84
+ consumerCount > 0 ,
85
+ (flags .contains ("mandatory" ) ||
86
+ flags .contains ("immediate" )),
87
+ confirm != -1 );
88
88
89
89
ConnectionFactory factory = new ConnectionFactory ();
90
90
factory .setShutdownTimeout (0 ); // So we still shut down even with slow consumers
@@ -118,7 +118,7 @@ public static void main(String[] args) {
118
118
p .setProducerRateLimit (producerRateLimit );
119
119
p .setTimeLimit ( timeLimit );
120
120
121
- MulticastSet set = new MulticastSet (stats , factory , p );
121
+ MulticastSet set = new MulticastSet (stats , factory , p , testID );
122
122
set .run (true );
123
123
124
124
stats .printFinal ();
@@ -141,7 +141,7 @@ private static void usage(Options options) {
141
141
private static Options getOptions () {
142
142
Options options = new Options ();
143
143
options .addOption (new Option ("?" , "help" , false ,"show usage" ));
144
- options .addOption (new Option ("d" , "id" , true , "Test ID" ));
144
+ options .addOption (new Option ("d" , "id" , true , "test ID" ));
145
145
options .addOption (new Option ("h" , "uri" , true , "connection URI" ));
146
146
options .addOption (new Option ("t" , "type" , true , "exchange type" ));
147
147
options .addOption (new Option ("e" , "exchange" , true , "exchange name" ));
@@ -198,12 +198,12 @@ private static class PrintlnStats extends Stats {
198
198
private final boolean recvStatsEnabled ;
199
199
private final boolean returnStatsEnabled ;
200
200
private final boolean confirmStatsEnabled ;
201
-
201
+
202
202
private final String testID ;
203
203
204
204
public PrintlnStats (String testID , long interval ,
205
- boolean sendStatsEnabled , boolean recvStatsEnabled ,
206
- boolean returnStatsEnabled , boolean confirmStatsEnabled ) {
205
+ boolean sendStatsEnabled , boolean recvStatsEnabled ,
206
+ boolean returnStatsEnabled , boolean confirmStatsEnabled ) {
207
207
super (interval );
208
208
this .sendStatsEnabled = sendStatsEnabled ;
209
209
this .recvStatsEnabled = recvStatsEnabled ;
@@ -215,27 +215,27 @@ public PrintlnStats(String testID, long interval,
215
215
@ Override
216
216
protected void report (long now ) {
217
217
String output = "id: " + testID + ", " ;
218
-
218
+
219
219
output += "time: " + String .format ("%.3f" , (now - startTime )/1000.0 ) + "s" ;
220
220
output +=
221
- getRate ("sent" , sendCountInterval , sendStatsEnabled , elapsedInterval ) +
221
+ getRate ("sent" , sendCountInterval , sendStatsEnabled , elapsedInterval ) +
222
222
getRate ("returned" , returnCountInterval , sendStatsEnabled && returnStatsEnabled , elapsedInterval ) +
223
223
getRate ("confirmed" , confirmCountInterval , sendStatsEnabled && confirmStatsEnabled , elapsedInterval ) +
224
224
getRate ("nacked" , nackCountInterval , sendStatsEnabled && confirmStatsEnabled , elapsedInterval ) +
225
225
getRate ("received" , recvCountInterval , recvStatsEnabled , elapsedInterval );
226
226
227
227
output += (latencyCountInterval > 0 ?
228
- ", min/avg/max latency: " +
229
- minLatency /1000L + "/" +
230
- cumulativeLatencyInterval / (1000L * latencyCountInterval ) + "/" +
231
- maxLatency /1000L + " microseconds" :
232
- "" );
228
+ ", min/avg/max latency: " +
229
+ minLatency /1000L + "/" +
230
+ cumulativeLatencyInterval / (1000L * latencyCountInterval ) + "/" +
231
+ maxLatency /1000L + " microseconds" :
232
+ "" );
233
233
234
234
System .out .println (output );
235
235
}
236
236
237
237
private String getRate (String descr , long count , boolean display ,
238
- long elapsed ) {
238
+ long elapsed ) {
239
239
if (display )
240
240
return ", " + descr + ": " + formatRate (1000.0 * count / elapsed ) + " msg/s" ;
241
241
else
@@ -245,15 +245,15 @@ private String getRate(String descr, long count, boolean display,
245
245
public void printFinal () {
246
246
long now = System .currentTimeMillis ();
247
247
248
- System .out .println ("sending rate avg: " +
249
- formatRate (sendCountTotal * 1000.0 / (now - startTime )) +
250
- " msg/s" );
248
+ System .out .println ("id: " + testID + ", sending rate avg: " +
249
+ formatRate (sendCountTotal * 1000.0 / (now - startTime )) +
250
+ " msg/s" );
251
251
252
252
long elapsed = now - startTime ;
253
253
if (elapsed > 0 ) {
254
- System .out .println ("recving rate avg: " +
255
- formatRate (recvCountTotal * 1000.0 / elapsed ) +
256
- " msg/s" );
254
+ System .out .println ("id: " + testID + ", recving rate avg: " +
255
+ formatRate (recvCountTotal * 1000.0 / elapsed ) +
256
+ " msg/s" );
257
257
}
258
258
}
259
259
0 commit comments