MQ(message queue)消息队列,是基础数据结构 先进先出 的一种典型数据结构。一般用来解决应用解耦,异步消息,流量削锋等问题,实现高性能,高可用,可伸缩和最终一致性架构。
MQ 主要产品包括:RabbitMQ、ActiveMQ、RocketMQ、ZeroMQ、Kafka
MQTT 是轻量的 (Lightweight)、发布订阅模式 (PubSub) 的物联网消息协议
前言
注意:如果已经有 MQTT 环境,环境搭建这一章节,可以跳过
安装
准备一台 Linux 机器(以 centos7),搭建国内开源 emqx 项目,目前该项目最新版本,还未发布 centos8 版本,所以,如果您的电脑为 centos8,CentOS7 均可以执行:
启动
执行:
访问
MQTT 服务采用 TCP 协议传输数据,端口有多个,其中可以外部访问的端口默认 1883。
管理台访问端口 18083,用户:admin,密码:public
配置及日志
配置文件:/etc/emqx/emqx.conf
listener.tcp.external = 0.0.0.0:1883 # 可以外网访问的端口
listener.tcp.internal = 127.0.0.1:11883 # 只能本机访问
log.dir = /var/log/emqx # 日志文件路径
log.level = warning # 日志级别
log.file = emqx.log # 日志文件,会自动在后面增加数字
日志文件:/var/log/emqx
参考:
https://docs.emqx.io/broker/v3/cn/install.html#
https://docs.emqx.io/broker/latest/cn/
Jmeter 测试 MQTT
方法一:
安装插件 MQTT Protocol Support
启动 jmeter,进入 选项(options) > Plugins Manager > Available Plugins 搜索 MQ, 选择 MQTT Portocol Support, 然后安装并重启 jmeter。
安装成功后,在 jmeter 的取样器中,新增了 MQTT Publisher、MQTT Subscriber
其中,MQTT Subscriber 是注册一个主题,MQTT Publisher 是使用主题发送消息。
添加 MQTT Subscriber 在 Provider URL 地址中,填写你的服务器 ip,然后点击右侧的 Generate ID 自动生成 Client ID,然后再在 Topic 中,输入一个主题信息,在 Text Message 中,填写要发布的信息。run 一下,就成功了。
现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:822269834
方法二:
使用 WebSocket 插件
在插件管理中,安装 WebSocket Samplers by Peter Doornbosch
安装成功后,在取样器中,添加 WebSocket Open Connection, 协议选择默认的 ws, ip 填写你的服务器 ip 地址,端口默认为 8083,Path 根据你的 MQ 的 socket 地址填写。
再添加 WebSocket Single Write Sample, Connection 选择 use existing connection, 在 Request data 中,填写要发送的信息,run 一下,搞定。
好了, 关于 Jmeter 如何调用 MQ 的测试方法,我们就介绍到这。你都掌握了吗?
总结:
感谢每一个认真阅读我文章的人!!!
作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些自动化测试的学习资源,希望能给你前进的路上带来帮助。
软件测试面试文档
我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。