haproxy+rabbitmq集群及单点性能测试方案(通用)

说明:该测试方案文档旨在提供通用有效的rabbitmq性能测试方案,无论是单点rabbitmq还是rabbitmq集群,所以,这里没有必要提供具体的测试机器、操作系统、应用的信息。所有测试操作都是博主自己查阅官方文档实践操作过的,所以拿出来供大家参考。

一,背景说明

1,测试工具:

rabbitmq-perf-test-2.0.0(官方提供)

下载地址:https://bintray.com/rabbitmq/java-tools/download_file?file_path=perf-test%2F2.0.0%2Frabbitmq-perf-test-2.0.0-bin.tar.gz

2,测试工具需要环境:

jdk-8u151-linux-x64,说明JDK8即可

3,测试工具根目录:

/opt/software/rabbitmq-perf-test-2.0.0

4,工作目录:

/opt/software/rabbitmq-perf-test-2.0.0

5,命令执行示例:

./bin/runjava com.rabbitmq.perf.PerfTestMulti ./publish-consume-spec-persistent-pc1-cc0-simp.js ./publish-consume-spec-persistent-pc1-cc0-simp-result.js

6,测试目的:

获取平均速度或实时速度;

messages平均发布速度(当消费者数量为0的时候才需要计算该值):即最终执行完队列中的消息数量除以60;

messages实时发布速度(当消费者数量为0的时候才需要计算该值):打开management-plugin的WEB界面------>Overview------>Message rates last minute,在测试过程中查看此处的值;

haproxy+rabbitmq集群及单点性能测试方案(通用)_第1张图片

messages实时发布速度(当消费者数量不为0的时候才需要计算该值):打开management-plugin的WEB界面------>Overview------>Message rates last minute,在测试过程中查看此处的值;

 

 

7,注意事项:

1,消费者数量为0,只有生产者的测试,每次测试完之后都需要在rabbitmq的management-plugin的web界面把limu01这个queue删除,不然messages会累积占用内存;

2,消费者和生产者数量都不为0的情况下,测试完之后对应的queue就会被消费掉,无需手动删除;

 

二,具体测试操作

(一)测试指标:no persistent;no confirm;no ack;指定queue名称,共8次,每次执行60s;

一个runjava进程:

1,1个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 1,

'consumer-count': 0]}]

2,2个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 2,

'consumer-count': 0]}]

3,3个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 3,

'consumer-count': 0]}]

4,4个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 0]}]

5,5个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 5,

'consumer-count': 0]}]

6,6个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 6,

'consumer-count': 0]}]

7,7个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 7,

'consumer-count': 0]}]

8,8个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 8,

'consumer-count': 0]}]

 

(二)测试指标:no persistent;confirm;no ack;指定queue名称,共1次;每次执行60s。

一个runjava进程:

1,4个生产者,0个消费者

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': 0,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 0]}]

 

(三)测试指标:no persistent;no confirm;auto ack;指定queue名称,共4次;每次执行60s。

一个runjava进程:

说明:生产者使用no confirm,而且数量比消费者多,是为了确保生产速度不会成为消费速度的瓶颈。

1,4个生产者,3个消费者,multi-ack-every 0秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'auto-ack': true,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

2,4个生产者,3个消费者,multi-ack-every 10秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'auto-ack': true,

'multi-ack-every': 10,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

3,4个生产者,3个消费者,multi-ack-every 30秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'auto-ack': true,

'multi-ack-every': 30,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

4,4个生产者,3个消费者,multi-ack-every 60秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'auto-ack': true,

'multi-ack-every': 60,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

(四)测试指标:no persistent;no confirm;consumer(manual) ack;指定queue名称,共4次;每次执行60s。

一个runjava进程:

1,4个生产者,3个消费者,multi-ack-every 0秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'auto-ack': false,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

2,4个生产者,3个消费者,multi-ack-every 10秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'auto-ack': false,

'multi-ack-every': 10,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

3,4个生产者,3个消费者,multi-ack-every 30秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'auto-ack': false,

'multi-ack-every': 30,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

4,4个生产者,3个消费者,multi-ack-every 60秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'confirm': -1,

'auto-ack': false,

'multi-ack-every': 60,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

 

 

 

(五)测试指标:persistent;no confirm;no ack;指定queue名称,共8次,每次执行60s;

一个runjava进程:

1,1个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 1,

'consumer-count': 0]}]

2,2个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 2,

'consumer-count': 0]}]

3,3个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 3,

'consumer-count': 0]}]

4,4个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 0]}]

5,5个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 5,

'consumer-count': 0]}]

6,6个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 6,

'consumer-count': 0]}]

7,7个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 7,

'consumer-count': 0]}]

8,8个生产者,0个消费者(0个消费者就是no ack了,如果有消费者,默认就是auto ack,auto ack )

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200,

'producer-count': 8,

'consumer-count': 0]}]

 

(六)测试指标:persistent;confirm;no ack;指定queue名称,共1次;每次执行60s。

一个runjava进程:

1,4个生产者,0个消费者

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': 0,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 0]}]

 

(七)测试指标:persistent;no confirm;auto ack;指定queue名称,共4次;每次执行60s。

一个runjava进程:

说明:生产者使用no confirm,而且数量比消费者多,是为了确保生产速度不会成为消费速度的瓶颈。

1,4个生产者,3个消费者,multi-ack-every 0秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'auto-ack': true,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

2,4个生产者,3个消费者,multi-ack-every 10秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'auto-ack': true,

'multi-ack-every': 10,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

3,4个生产者,3个消费者,multi-ack-every 30秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'auto-ack': true,

'multi-ack-every': 30,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

4,4个生产者,3个消费者,multi-ack-every 60秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'auto-ack': true,

'multi-ack-every': 60,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

(八)测试指标:persistent;no confirm;consumer(manual) ack;指定queue名称,共4次;每次执行60s。

一个runjava进程:

1,4个生产者,3个消费者,multi-ack-every 0秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'auto-ack': false,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

2,4个生产者,3个消费者,multi-ack-every 10秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'auto-ack': false,

'multi-ack-every': 10,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

3,4个生产者,3个消费者,multi-ack-every 30秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'auto-ack': false,

'multi-ack-every': 30,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

4,4个生产者,3个消费者,multi-ack-every 60秒

[{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'consume',

'type': 'simple',

'params': [{'time-limit': 60,

'queue-names': ['limu01'],

'flags': ['persistent'],

'confirm': -1,

'auto-ack': false,

'multi-ack-every': 60,

'min-msg-size': 200,

'producer-count': 4,

'consumer-count': 3]}]

 

 

(九)测试指标:no persistent,没指定queue名称,no confirm,no ack(也就是没有消费者),共3次,每次执行60s。

一个runjava进程:

1,10个生产者,0个消费者

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 0,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]}]

}

]

2,20个生产者,0个消费者

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 0,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [20]}]

}

]

3,30个生产者,0个消费者

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 0,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [30]}]

}

]

 

 

下面的测试比较特殊,说明如下:

创建6个配置文件:可以根据需要调整个数;

./various-spec1.js

./various-spec2.js

./various-spec3.js

./various-spec4.js

./various-spec5.js

./various-spec6.js

 

xshell上打开6个shell界面,同时执行6个runjava进程,也可以一个窗口下后台运行(该方法可以尝试一下):

./bin/runjava com.rabbitmq.perf.PerfTestMulti ./various-spec1.js ./various-spec1-result.js

./bin/runjava com.rabbitmq.perf.PerfTestMulti ./various-spec2.js ./various-spec2-result.js

./bin/runjava com.rabbitmq.perf.PerfTestMulti ./various-spec3.js ./various-spec3-result.js

./bin/runjava com.rabbitmq.perf.PerfTestMulti ./various-spec4.js ./various-spec4-result.js

./bin/runjava com.rabbitmq.perf.PerfTestMulti ./various-spec5.js ./various-spec5-result.js

./bin/runjava com.rabbitmq.perf.PerfTestMulti ./various-spec6.js ./various-spec6-result.js

 

(十)测试指标:persistent,指定queue名称,no confirm,no ack,共1次,执行60秒;

1,6个runjava进程,每个runjava进程10个生产者,0个消费者,共60个生产者,0个消费者。

./various-spec1.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 0,

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu01']]}]

}

]

 

./various-spec2.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 0,

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu02']]}]

}

]

 

./various-spec3.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 0,

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu03']]}]

}

]

 

./various-spec4.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 0,

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu04']]}]

}

]

 

./various-spec5.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 0,

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu05']]}]

}

]

 

./various-spec6.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 0,

'flags': ['persistent'],

'confirm': -1,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu06']]}]

}

]

 

 

(十一)测试指标:persistent,指定queue名称,confirm,auto ack,共1次,执行60秒;

1,6个runjava进程,每个runjava进程10个生产者和10个消费者,共60个生产者和60个消费者;

./various-spec1.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'auto-ack': true,

'flags': ['persistent'],

'confirm': 0,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu01']]}]

}

]

 

./various-spec2.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'auto-ack': true,

'flags': ['persistent'],

'confirm': 0,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu02']]}]

}

]

 

./various-spec3.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'auto-ack': true,

'flags': ['persistent'],

'confirm': 0,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu03']]}]

}

]

 

./various-spec4.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'auto-ack': true,

'flags': ['persistent'],

'confirm': 0,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu04']]}]

}

]

 

./various-spec5.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'auto-ack': true,

'flags': ['persistent'],

'confirm': 0,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu05']]}]

}

]

 

./various-spec6.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'auto-ack': true,

'flags': ['persistent'],

'confirm': 0,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu06']]}]

}

]

 

 

(十二)测试指标:persistent,指定queue名称,confirm,consumer ack,共1次,执行60s。

1,6个runjava进程,每个runjava进程10个生产者和10个消费者,共60个生产者和60个消费者;

./various-spec1.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'flags': ['persistent'],

'confirm': 0,

'auto-ack': false,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu01']]}]

}

]

 

./various-spec2.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'flags': ['persistent'],

'confirm': 0,

'auto-ack': false,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu02']]}]

}

]

 

./various-spec3.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'flags': ['persistent'],

'confirm': 0,

'auto-ack': false,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu03']]}]

}

]

 

./various-spec4.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'flags': ['persistent'],

'confirm': 0,

'auto-ack': false,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu04']]}]

}

]

 

./various-spec5.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'flags': ['persistent'],

'confirm': 0,

'auto-ack': false,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu05']]}]

}

]

 

./various-spec6.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'flags': ['persistent'],

'confirm': 0,

'auto-ack': false,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu06']]}]

}

]

 

 

 

(十三)测试指标:no persistent,指定queue名称,confirm,auto ack,共1次,执行60s。

1,6个runjava进程,每个runjava进程10个生产者和10个消费者,共60个生产者和60个消费者;

./various-spec1.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'confirm': 0,

'auto-ack': true,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu01']]}]

}

]

 

./various-spec2.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'confirm': 0,

'auto-ack': true,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu02']]}]

}

]

 

./various-spec3.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'confirm': 0,

'auto-ack': true,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu03']]}]

}

]

 

./various-spec4.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'confirm': 0,

'auto-ack': true,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu04']]}]

}

]

 

./various-spec5.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'confirm': 0,

'auto-ack': true,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu05']]}]

}

]

 

./various-spec6.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'confirm': 0,

'auto-ack': true,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu06']]}]

}

]

 

(十四)测试指标:no persistent,指定queue名称,confirm,consumer ack,共1次,执行60s。

1,6个runjava进程,每个runjava进程10个生产者和10个消费者,共60个生产者和60个消费者;

./various-spec1.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'confirm': 0,

'auto-ack': false,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu01']]}]

}

]

 

 

./various-spec2.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'confirm': 0,

'auto-ack': false,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu02']]}]

}

]

 

./various-spec3.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'confirm': 0,

'auto-ack': false,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu03']]}]

}

]

 

./various-spec4.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'confirm': 0,

'auto-ack': false,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu04']]}]

}

]

 

./various-spec5.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'confirm': 0,

'auto-ack': false,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu05']]}]

}

]

 

./various-spec6.js

[

{'uri': 'amqp://test:[email protected]:5672/test',

'name': 'message-sizes-and-producers',

'type': 'varying',

'params': [{'time-limit': 60,

'consumer-count': 10,

'confirm': 0,

'auto-ack': false,

'min-msg-size': 200}],

'variables': [{'name': 'producer-count',

'values': [10]},

{'name': 'queue-names',

'values': [['limu06']]}]

}

]

你可能感兴趣的:(RabbitMQ)