Skip to content

Performance Test on CentOS 6.3

bulldog2011 edited this page Apr 18, 2013 · 11 revisions

#Performance Test on CentOS 6.3

Tests on single machine

In the following tests, one producer process, one consumer process and one broker process all run on my server(CentOS 6.3, HD with ext4 filesystem), and there is only one active topic on broker for testing in each round. These tests are performed to check the pure performance of Luxun messaging system by separating the impact of network. See full hardware spec for benchmark here.

JVM setting:

  1. producer : -Xmx1g
  1. consuemr : -Xmx1g
  2. broker : -Xmx4g

###Test Suite 1 - Standalone Async Producing(batch size = 200, flush disabled on broker)

Test Case messge size(bytes) thread number nMsgs sent throughput(MB/s) speed(nMsg/s)
TC11 100 1 2000000 55.8684 585823
TC12 1024 1 2000000 232.5147 238095.2381
TC13 2048 1 2000000 219.2429 112252.3433
TC14 4096 1 2000000 141.4847 36220.0732
TC15 100 10 2000000 155.7019 1632653.0612
TC16 1024 10 2000000 450.4440 461254.6125
TC17 2048 10 2000000 444.2454 227453.6563
TC18 4096 10 2000000 305.1877 78128.0519

###Test Suite 2 - Standalone Sync Producing(flush disabled on broker)

Test Case messge size(bytes) thread number nMsgs sent throughput(MB/s) speed(nMsg/s)
TC21 100 1 2000000 15.5019 162548.7646
TC22 1024 1 2000000 110.6963 113352.9812
TC23 2048 1 2000000 185.5348 94993.8254
TC24 4096 1 2000000 246.0242 62982.2075
TC25 100 10 2000000 21.2376 222692.3505
TC26 1024 10 2000000 137.3699 140666.7604
TC27 2048 10 2000000 162.1995 83046.1321
TC28 4096 10 2000000 139.5363 35721.3024

###Test Suite 3 - Standalone Consuming(fetch size = 1024 * 1024bytes)

Test Case messge size(bytes) thread number nMsgs fetched throughput(MB/s) speed(nMsg/s)
TC31 100 1 2000000 190.7349 1461988.3041
TC32 1024 1 2000000 217.1828 222395.1963
TC33 2048 1 2000000 170.3034 87195.3612
TC34 4096 1 2000000 231.2143 59190.8609
TC35 100 10 2000000 160.1468 1679261.1251
TC36 1024 10 2000000 239.1191 244857.9824
TC37 2048 10 2000000 258.2645 132231.4050
TC38 4096 10 2000000 233.7812 59847.9861

###Test Suite 4 - Concurrent Producing(Async) & Consuming(batch size = 200, fetch size = 1024 * 1024bytes, flush disabled on broker)

Test Case messge size(bytes) thread number nMsgs sent/fetched producer throughput(MB/s) producer speed(nMsg/s) consumer throughput(MB/s) consumer speed(nMsg/s)
TC41 1024 20(p:10, c:10) 5000000 192.3124 196927.9244 91.5156 93711.9295

Tests on multiple machines

In the following tests, one broker runs on my server(CentOS 6.3 HD with ext4), one producer process and one consumer process run on my notebook(Ubuntu 12.04LTS), and there is only one active topic on borker for testing in each round. These tests are performed to check the performance of Luxun messaging system in networking environment. The switch used is a very cheap 1g switch, see full hardware spec for benchmark here.

JVM setting:

  1. producer : -Xmx1g
  1. consuemr : -Xmx1g
  2. broker : -Xmx4g

###Test Suite 1 - Standalone Async Producing(batch size = 200, flush disabled on broker)

Test Case messge size(bytes) thread number nMsgs sent throughput(MB/s) speed(nMsg/s)
TC11 100 1 2000000 50.5124 529661.0169
TC12 1024 1 2000000 57.0572 58426.5724
TC13 2048 1 2000000 56.9482 29157.4942
TC14 4096 1 2000000 57.2735 14662.0041
TC15 100 10 2000000 40.8338 428173.8386
TC16 1024 10 2000000 57.4956 58875.4784
TC17 2048 10 2000000 57.4643 29421.7162
TC18 4096 10 2000000 57.7578 14786.0095

###Test Suite 2 - Standalone Sync Producing(flush disabled on broker)

Test Case messge size(bytes) thread number nMsgs sent throughput(MB/s) speed(nMsg/s)
TC21 100 1 2000000 15.2101 159489.6332
TC22 1024 1 2000000 38.6237 39550.7040
TC23 2048 1 2000000 45.7128 23404.9525
TC24 4096 1 2000000 50.9894 13053.2966
TC25 100 10 2000000 18.9034 198216.0555
TC26 1024 10 2000000 45.3224 46410.1731
TC27 2048 10 2000000 51.9759 26611.6692
TC28 4096 10 2000000 54.8554 14042.9715

###Test Suite 3 - Standalone Consuming(fetch size = 1024 * 1024bytes)

Test Case messge size(bytes) thread number nMsgs fetched throughput(MB/s) speed(nMsg/s)
TC31 100 1 2000000 52.2275 547645.1260
TC32 1024 1 2000000 72.8778 74626.8657
TC33 2048 1 2000000 76.1675 38997.7576
TC34 4096 1 2000000 74.4970 19071.2310
TC35 100 10 2000000 55.4946 581902.8222
TC36 1024 10 2000000 73.3072 75066.6216
TC37 2048 10 2000000 76.4208 39127.4577
TC38 4096 10 2000000 74.6130 19100.9197