I re-worked the sample test code that Stefan posted so I could use it to test
my changes.  I'm not sure really how to turn this in to a unit-test, since
it's simply an implementation evaluation test tool, and not really a
validation test.  Anyway, I had to change to use high-resolution timers,
because the DateTime.Now timer is only accurate to within 10-milliseconds. 
The margin of error is too great for this type of time test.  Here is the
modified source file:  http://www.nabble.com/file/p19208717/nmsspeedtest.cs
nmsspeedtest.cs .   (Caveat: this code will only work with my dev build due
to the patches I have made to it, but not checked in.  If the changes look
good, then this code will work after I commit them.)

Here are the results from running the same test scenario multiple times with
different URI connections.  I am sure this could be formatted very
effectively into a spreadsheet to make the comparisons easier to make.

Scenario: tcp://localhost:61616
Test 0
Request message sent      7.416
Request message recv     23.886
Reply message sent      189.227
Reply message recv      203.935
Test 1
Request message sent     93.864
Request message recv    108.159
Reply message sent      312.878
Reply message recv      313.595
Test 2
Request message sent    217.790
Request message recv    218.346
Reply message sent      436.549
Reply message recv      437.026
Test 3
Request message sent    327.617
Request message recv    328.142
Reply message sent      546.322
Reply message recv      546.811
Test 4
Request message sent    218.215
Request message recv    218.910
Reply message sent      436.943
Reply message recv      437.724
Scenario: tcp://localhost:61616?wireformat.TcpNoDelayEnabled=true
Test 0
Request message sent      0.917
Request message recv      1.538
Reply message sent      193.286
Reply message recv      194.667
Test 1
Request message sent    217.301
Request message recv    217.859
Reply message sent      326.716
Reply message recv      327.204
Test 2
Request message sent    218.146
Request message recv    218.704
Reply message sent      436.883
Reply message recv      437.368
Test 3
Request message sent    218.257
Request message recv    218.806
Reply message sent      437.070
Reply message recv      437.551
Test 4
Request message sent    218.213
Request message recv    218.759
Reply message sent      436.799
Reply message recv      437.330
Scenario:
tcp://localhost:61616?wireformat.TcpNoDelayEnabled=true&transport.TcpNoDelayEnabled=true
Test 0
Request message sent      0.927
Request message recv      1.664
Reply message sent        2.787
Reply message recv        4.380
Test 1
Request message sent      2.893
Request message recv      3.137
Reply message sent        3.998
Reply message recv        4.451
Test 2
Request message sent      0.740
Request message recv      1.505
Reply message sent        2.392
Reply message recv        3.129
Test 3
Request message sent      0.892
Request message recv      1.560
Reply message sent        3.860
Reply message recv        4.113
Test 4
Request message sent      1.944
Request message recv      2.286
Reply message sent        3.296
Reply message recv        3.973
Scenario: tcp://localhost:61616?transport.TcpNoDelayEnabled=true
Test 0
Request message sent      0.872
Request message recv      1.488
Reply message sent        2.360
Reply message recv      316.090
Test 1
Request message sent      1.167
Request message recv      1.879
Reply message sent        2.810
Reply message recv      327.778
Test 2
Request message sent      1.000
Request message recv      1.714
Reply message sent        2.591
Reply message recv      328.174
Test 3
Request message sent      1.012
Request message recv      1.614
Reply message sent        2.534
Reply message recv      328.014
Test 4
Request message sent      1.184
Request message recv      2.145
Reply message sent        3.108
Reply message recv      327.948
Scenario: tcp://localhost:61616?transport.FlushOnSend=false
Test 0
Request message sent      0.929
Request message recv      1.482
Reply message sent      186.404
Reply message recv      310.162
Test 1
Request message sent    208.501
Request message recv    209.045
Reply message sent      422.967
Reply message recv      437.409
Test 2
Request message sent    204.270
Request message recv    218.588
Reply message sent      423.038
Reply message recv      437.158
Test 3
Request message sent    204.557
Request message recv    218.779
Reply message sent      423.333
Reply message recv      423.817
Test 4
Request message sent    218.128
Request message recv    232.447
Reply message sent      546.299
Reply message recv      546.842
Scenario:
tcp://localhost:61616?transport.FlushOnSend=false&wireformat.TcpNoDelayEnabled=true
Test 0
Request message sent      0.923
Request message recv      1.492
Reply message sent      197.586
Reply message recv      198.975
Test 1
Request message sent    107.992
Request message recv    108.498
Reply message sent      326.686
Reply message recv      327.163
Test 2
Request message sent    218.160
Request message recv    218.718
Reply message sent      436.868
Reply message recv      437.356
Test 3
Request message sent    218.434
Request message recv    219.241
Reply message sent      436.955
Reply message recv      437.511
Test 4
Request message sent    108.951
Request message recv    109.811
Reply message sent      327.641
Reply message recv      328.263
Scenario:
tcp://localhost:61616?transport.FlushOnSend=false&wireformat.TcpNoDelayEnabled=true&transport.TcpNoDelayEnabled=true
Test 0
Request message sent      1.541
Request message recv      1.772
Reply message sent        2.780
Reply message recv        4.172
Test 1
Request message sent      2.715
Request message recv      2.944
Reply message sent        3.763
Reply message recv        4.260
Test 2
Request message sent      3.308
Request message recv      3.549
Reply message sent        4.516
Reply message recv        5.018
Test 3
Request message sent      3.625
Request message recv      3.847
Reply message sent        4.795
Reply message recv        5.251
Test 4
Request message sent      2.847
Request message recv      3.063
Reply message sent        3.894
Reply message recv        4.393
Scenario:
tcp://localhost:61616?transport.FlushOnSend=false&transport.TcpNoDelayEnabled=true
Test 0
Request message sent      0.881
Request message recv      2.312
Reply message sent        3.592
Reply message recv      207.325
Test 1
Request message sent      1.180
Request message recv      4.225
Reply message sent        5.124
Reply message recv      218.459
Test 2
Request message sent      1.010
Request message recv      1.670
Reply message sent        2.613
Reply message recv      219.084
Test 3
Request message sent      3.590
Request message recv      3.829
Reply message sent        4.762
Reply message recv      218.286
Test 4
Request message sent      1.022
Request message recv      1.743
Reply message sent        2.655
Reply message recv      218.643

-- 
View this message in context: 
http://www.nabble.com/Slow-performance-of-NMS-api-compared-to-Java-tp19158553p19208717.html
Sent from the ActiveMQ - User mailing list archive at Nabble.com.

Reply via email to