jmeter如何进行MQTT性能测试(测试前期准备二,MQTT插件及协议了解)
Posted on 2018-07-17 15:58 YouxiYouxi 阅读(889) 评论(0) 编辑 收藏 举报jmeter插件下载地址及使用,已经有大佬总结好了
大佬的博客地址:
https://blog.csdn.net/yellowanwu/article/details/50889677
- 添加线程组:添加->Threads(Users)->线程组
Ramp-Up Period(in seconds)
:设置的虚拟用户数需要多长时间全部启动。如果线程数为20 ,准备时长为10 ,那么需要10秒钟启动20个线程。也就是每秒
钟启动2个线程。如果设置0,为同时启动。 - 添加发布端:线程组右键,添加->Sampler->MQTT Publisher
Provider URL
:MQTT服务器地址List Topic
:发布的主题。虽然这里写的是list,但是作者并不支持,后面会讲修改了一下源码,支持多主题发布Number of samples to aggregate
:一个线程发布相同消息的次数throttle
:连续发送的消息之间,等待的毫秒数(要进行并发发布时,需要将这里置为0来操作,不然并发10时都无法进行发布
MQTT协议详解;
百度百科解释:https://baike.baidu.com/item/MQTT/3618851?fr=aladdin
MQTT(Message Queuing Telemetry Transport,消息队列遥测传输)是IBM开发的一个即时通讯协议,有可能成为物联网的重要组成部分。该协议支持所有平台,几乎可以把所有联网物品和外部连接起来,被用来当做传感器和制动器(比如通过Twitter让房屋联网)的通信协议。
要注意的是其中的Qos.
当QOS=0时,是服务质量不保证的一种传输,即是你发送的消息发布了但不一定能被服务器接收,存在数据发布过程中丢失数据情况
Qos=1时,是服务质量有一定保证的传输,出现传输失败,即重新再次链接发送数据,服务器可能会出现收到相同数据情况
Qos=2时i,是服务质量保证最好的一种传输方式,即发送失败后/发送成功都有一个字段进行标识,发送失败会再次重新发送,确保发布一定能到服务器上
对于这里由于公司采用的是QOS=0 方法,小数据,短时间的数据的发送,为了保证短时间端接收到的更多数据,丢失某些数据是相应的代价
四、性能用例设计
突然不想写了,后面在更新吧