• Jmeter中间件处理-RabbitMQ


    RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息中间件,它是基于Erlang语言编写的,并发能力强,性能好,是目前主流的消息队列中间件之一。



    RabbitMQ的安装可参照官网( https://www.rabbitmq.com/),安装完以后启动管理服务,RabbitMQ提供强大的管理功能。

     

    在使用Jmeter处理RabbitMQ以前,首先需要了解AMQP协议关于队列的规定,RabbitMQ支持下列几种队列:


    • Basic queue 简单队列:一个Producer对一个Consumer,功能类似于ActiveMQ的P2P模式• Work queue 轮询分发 : 一个Producer对应多个 Consumer,可以采用轮询或其他算法来设置Consumer进行消费,Producer的消息会被其中某一个Consumer消费• Fanout Exchange:生产者不将消息发送到消息队列,而是发送到交换机,每个队列绑定到交换机,生产者发送的消息经过交换机到达队列,实现一个消息被多个消费者消费的目的,功能类似于ActiveMQ的Topic/Subscriber模式• Direct Exchange:路由模式,根据key进行交换机和队列绑定• Topic Exchange:通配符模式,一个消费者队列可以有多个消费者实例,其中只有1个实例会接收到消息
    较为常用的有Direct Exchange和FanoutMode,本文以DirectExchange为例说明如何使用Jmeter处理RabbitMQ消息中间件。在使用Jmeter发送和消费RabbitMQ消息以前,我们首先通过控制台在RabbitMQ里新建一个Direct Exchange的交换机,并通过Key绑定相应队列


    安装JmeterRabbitMQ插件
    Jmeter没有内置对RabbitMQ的支持,在使用Jmeter发送和接受RabbitMQ以前,需要首先下载相应插件包编译后放置到Jmeter的lib当中( https://github.com/jlavallee/JMeter-Rabbit-AMQP )安装完插件包以后,新建Jmeter脚本,可以在脚本中看到AMQP Publisher和AMQP Consumer取样器,分别对应AMQP协议的消息发送者和消息接受者

    Jmeter发送RabbitMQ消息

    新建AMQP Publisher,因为本示例采用的是Direct Fanout模式,填写完RabbitMQ连接信息以后,在Publisher里需要指定对应的消费者的绑定Key以及交换机

     

    Jmeter接受RabbitMQ消息
    新建AMQP Consumer,此处指定RabbitMQ连接信息,交换机名称,类型以及队列名即可(需要和生产者匹配)

     

    运行脚本,查看结果数,此时也可以通过RabbitMQ控制台看到消息发送和接受的情况。

    作  者:Testfan kitty
    出  处:微信公众号:自动化软件测试平台
    版权说明:欢迎转载,但必须注明出处,并在文章页面明显位置给出文章链接
  • 相关阅读:
    Linux 设备驱动--- Poll 方法 --- Select【转】
    Linux 设备驱动--- 阻塞型字符设备驱动 --- O_NONBLOCK --- 非阻塞标志【转】
    一篇不错的v4l2入门文档【转】
    戴文的Linux内核专题:03 驱动程序【转】
    戴文的Linux内核专题:02 源代码【转】
    使用 Python 开始你的机器学习之旅【转】
    双缓冲(Double Buffer)原理和使用【转】
    内核中的内存申请:kmalloc、vmalloc、kzalloc、kcalloc、get_free_pages【转】
    几种常见的YUV格式--yuv422:yuv420【转】
    C程序编译过程浅析【转】
  • 原文地址:https://www.cnblogs.com/testfan2019/p/12400581.html
Copyright © 2020-2023  润新知