jmeter工具测试和压测websocket协议【杭州多测师_王sir】

一、安装JDK配置好环境变量,安装好jmeter

二、下载WebSocketSampler发送请求用的,地址:https://bitbucket.org/pjtr/jmeter-websocket-samplers/downloads/?spm=a2c4g.11186623.2.15.363f211bH03KeI

下载解压后的jar包放到D:\JMeter\apache-jmeter-3.3\lib\ext目录下

三、如果需要在jmeter中安装那么就需要下载jmeter的插件管理器,地址:https://jmeter-plugins.org/install/Install/

同理,下载解压后的jar包放到D:\JMeter\apache-jmeter-3.3\lib\ext目录下

下载完成后,JMeter会自动重启,没有重启就自己启动一下

四、创建websocket请求

五、测试WebSocket协议示例
以http://www.blue-zero.com/WebSocket/网站为例:

六、建立连接,发送websocket请求,进行断言

七、对websocket进行压测
参数配置如下:
并发线程数:10
ramp-up:60
循环次数:永远
duration:90秒
第一种场景:先创建连接,然后发送websocket请求

第二种场景:创建连接,并且发送websocket请求

结论:先创建连接再发送请求,tps到后面抖动厉害,创建连接并且发送请求的场景tps比较平稳,但因为只用了10个并发线程数,从tps趋势来看,还没达到服务器的瓶颈,所以接下来采用阶梯加压线程数进行单个请求的负载测试。

八、用jp@gc - Stepping Thread Group线程组进行单个请求的负载测试

第1轮:目标100个并发线程数,阶梯加压,吞吐量TPS能达到344,但是才37秒就开始报错了,并发线程数太高,调整策略重新来

第2轮:注释响应断言和断言结果,因为会影响tps,目标20个并发线程数,10秒增加2个线程,平均TPS达到了268.4/sec,响应时间也在1秒钟内,并发线程数18的时候最高tps达到了430,虽然有0.01%的报错,但是在可承受范围之内,符合websocket请求压测的预期

jmeter压测websocket协议其他资料参考阿里云:https://help.aliyun.com/document_detail/93627.html

服务器名称或IP:WebSocket端点(主机,服务器端WebSocket组件所在的位置)
端口号:WebSocker服务器侦听的端口,通常是HTTP端口80
超时:连接 -设置连接的最长时间(以毫秒为单位),如果超出则采样器失败,响应 -响应消息相同
实现:唯一可用的是RFC6455(v13) - WebSocket协议标准的最新版本
协议:要使用的WebSocket协议:ws前缀标识WebSocket连接,wss前缀标识WebSocket安全连接
Streaming Connection:表示TCP会话是否保留,如果选中 - 连接将保持不变,如果未选中,则在第一次响应后将关闭连接
请求数据:定义外发消息
响应模式:采样器将等待响应以包含定义的模式(或直到响应超时发生)
关闭连接模式:与“响应模式”基本相同,但连接将被关闭
消息Backlog:标识要保留的响应消息的最大长度。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/55886.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

K8S系列文章之 Traefik快速入门

traefik 与 nginx 一样,是一款优秀的反向代理工具,或者叫 Edge Router。至于使用它的原因则基于以下几点 无须重启即可更新配置自动的服务发现与负载均衡与 docker 的完美集成,基于 container label 的配置漂亮的 dashboard 界面metrics 的支…

uniapp实现支付宝菜单展开与收起

需求实现支付宝类似的效果: 思路: 1.首先建立展开收起按钮,这里使用的是uview里面的icon图标。 2.其次建立展开菜单内容,这里只演示了文本信息,后期引入首页应用。 3.最后写js逻辑,展开收起时改变盒子高度和…

Harbor部署--使用 Harbor 安装包

一、Harbor安装准备条件 这里以 harbor 2.8.3 版本为例 1.1 硬件要求 Harbor 安装对硬件资源CPU、内存和硬盘的要求如下表: 资源 最小要求 推荐配置 CPU 2 CPU 4 CPU Mem 4 GB 8 GB Disk 40 GB 160 GB 使用如下命令分别查看服务器的物理CPU和逻辑CPU个数…

任务12、Quality指令加持,Midjourney生成电影级数码作品

12.1 任务概述 本次实验任务旨在帮助你掌握Midjourney AI绘画中的Quality指令。通过深入介绍Quality指令的概念和作用,我们将解释为什么它在绘画中至关重要。通过测试不同的Quality参数对绘画效果的影响,并提供实战演示,你将学会如何在Midjourney中设置Quality参数以达到更…

【JavaEE进阶】Spring核心与设计思想

文章目录 一. Spring框架概述1. 什么是Spring框架2. 为什么要学习框架?3. Spring框架学习的难点 二. Spring 核心与设计思想1. 什么是容器?2. 什么是IoC?3. Spring是IoC容器4. DI(依赖注入)5. DL(依赖查找) 一. Spring框架概述…

git删除已经提交到本地仓库的代码

使用场景如下:在开发工程中第一版编写了一个功能,可在版本迭代的过程中该功能被舍去了,这就意味着该功能的核心代码都要删除,可以该部分代码早已提交到本地仓库了,那么该如何删除本地仓库记录的代码呢? 首先很多人都…

import有什么用,python中怎么使用import

目录 引言 import的概念 import的作用 import的应用 Python中如何使用import import报错处理 代码示例 注意事项 总结 引言 在Python编程语言中,import是一个关键字,用于将其他模块或库的功能引入当前代码中。import的概念和功能使得Python成为…

避免安装这5种软件,手机广告频繁弹窗且性能下降

在我们使用手机的日常生活中,选择合适的应用软件对于保持良好的使用体验至关重要。然而,有些软件可能会给我们带来不必要的麻烦和困扰。特别是那些频繁弹窗广告、导致手机性能下降的应用程序,我们应该尽量避免安装它们。 首先第一种&#xf…

聚观早报|iPhone 15预计9月22日上市;一加Open渲染图曝光

【聚观365】8月7日消息 iPhone 15预计9月22日上市一加Open渲染图曝光Redmi K60至尊版细节曝光小米14 Pro屏幕细节曝光vivo V3正式发布,执着自研“影像芯片” iPhone 15预计9月22日上市 上周有多位消息人士透露,多家合作的电信运营商已要求员工不要在9月…

编写第一个 React Native 程序

React Native 目录 使用React Native CLI命令创建的目录如下图所示: 重要目录说明 目录说明__tests__存放测试用例的目录.bundle / config配置文件(一般不会用到)android 和 IOS 文件夹这两个文件夹主要是存放安卓和 ios 相关的配置文件和…

【JAVA】正则表达式是啥?

个人主页:【😊个人主页】 系列专栏:【❤️初识JAVA】 文章目录 前言正则表达式正则表达式语法正则表达式的特点捕获组实例 前言 如果我们想要判断给定的字符串是否符合正则表达式的过滤逻辑(称作“匹配”)&#xff0c…

基于EEGLAB的ICA分析

目录 1.ICA原理 2.ICA的实现 3.ICA成分识别 4.ICLabel识别并去除伪迹 5.ICA成分识别练习 1.ICA原理 得到的每一个地形图,实际上就是它的权重谱。 投射:根据原成分恢复原始信号。 选择性投射:去伪。 2.ICA的实现 extended,1&…