分布式消息服务RABBITMQ版-测试RabbitMQ生产速率和消费速率:测试脚本

时间:2024-08-13 09:49:52

测试脚本

  • 测试脚本自动创建的Exchange类型为“direct”,队列特性为非持久化、自动删除,在测试fanout类型Exchange和仲裁队列时,需要在脚本后增加“--predeclared”,表示使用自己定义的Exchange和队列参数。
  • 测试开启SSL的实例时,需要将“amqp://”修改为“amqps://”,表示以加密形式传输数据。

单队列测试脚本:

./runjava com.rabbitmq.perf.PerfTest -h amqp://${实例用户名}:${实例密码}@${内网连接地址} -e ${Exchange名称} -s 1024 -u ${队列名称} -x ${生产者个数} -y ${消费者个数} -z ${运行时间}

参数说明如下:

  • 实例用户名:购买实例时设置的用户名。
  • 实例密码:购买实例时设置的密码。
  • 内网连接地址:购买实例后获取的内网连接地址。
  • 队列名称:队列的名称。
  • 生产者个数:生产者的数量。
  • 消费者个数:消费者的数量。
  • 运行时间:脚本的运行时间,单位为秒。

多队列测试脚本:

./runjava com.rabbitmq.perf.PerfTest -h amqp://${实例用户名}:${实例密码}@${内网连接地址} -e ${Exchange名称} -s 1024 -x ${生产者个数} -y ${消费者个数} -z ${运行时间} --queue-pattern 'queue-%d' --queue-pattern-from 1 --queue-pattern-to x

参数说明如下:

  • 实例用户名:购买实例时设置的用户名。
  • 实例密码:购买实例时设置的密码。
  • 内网连接地址:购买实例后获取的内网连接地址。
  • 生产者个数:生产者的数量。
  • 消费者个数:消费者的数量。
  • 运行时间:脚本的运行时间,单位为秒。
  • queue-%d:表示多个队列,队列名称前缀为queue-,%d表示变量,取值为从--queue-pattern-from数值到--queue-pattern-to数值的连续整数。例如

    --queue-pattern 'queue-%d' --queue-pattern-from 1 --queue-pattern-to 3,表示3个队列,队列名称为queue-1、queue-2、queue-3。

support.huaweicloud.com/usermanual-rabbitmq/rabbitmq-ug-0058.html