“Jmeter WebSocket协议压测”,助你轻松应对高并发场景!

这篇具有很好参考价值的文章主要介绍了“Jmeter WebSocket协议压测”,助你轻松应对高并发场景!。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

引言

背景说明

步骤1:安装插件JMeter WebSocket Samplers

步骤2:采集器使用

步骤3:脚本执行

 结语


引言

在当今高并发的网络环境下,WebSocket协议已经成为了最受欢迎的实时通信技术之一。然而,对于开发人员来说,如何有效地压测WebSocket协议仍是一个挑战。

Jmeter是一款功能强大、易用的负载测试工具,而它也可以轻松地对WebSocket协议进行压测。通过使用Jmeter测试WebSocket协议,您可以验证您的应用程序在高并发场景下的性能表现,并及时发现和解决潜在的性能问题。

因此,如果您正在寻找一种可靠且高效的方式来测试WebSocket协议,那么使用Jmeter进行WebSocket协议压测将是您不错的选择!

背景说明

目前市面上的协议种类繁多,我们可以通过Jmeter添加插件实现脚本编写,这里以WebSocket协议的业务压测为例来说明。

WebSocket的插件较多,本文以JMeter WebSocket Samplers为例来进行压测。JMeter WebSocket Samplers具有以下特性:

  • 提供 6 个不同的 WebSocket 采样器
  • 采样器不会创建额外的线程,因此可以使用大量的 JMeter 线程,
  • 支持 wss(基于 TLS 的 WebSocket)
  • wss 支持与 JMeter 的 SSLManager 完全兼容,包括客户端证书
  • 支持二进制 WebSocket 帧
  • 用于检查二进制响应的断言
  • 在“查看结果树”中查看二进制结果
  • 与 JMeter 的 Header Manager 集成以在 WebScoket 升级请求上设置额外的 HTTP 标头
  • 在每次升级请求(即发起 WebSocket 连接的 HTTP 请求)时发送由 JMeter 的 Cookie Manager 定义的 cookie
  • 代理支持
  • 提供用于丢弃与测试无关的帧的过滤器
  • 许多示例 JMeter 测试计划说明了各种功能。

步骤1:安装插件JMeter WebSocket Samplers

  1. 下载地址:JMeter WebSocket Samplers,建议下载最新版本。
  2. 将下载的插件 .jar包存放在<JMeter安装目录>/lib/ext路径下。
  3. 打开JMeter工具,查看插件是否安装成功:

线程组->添加->取样器,可以看到以下添加的采样器选择,具体说明如下:

websocket压测方案,软件测试,Jmeter,性能测试,软件测试,jmeter,软件测试工程师,性能测试,压力测试

采集器名称

说明

WebSocket Close

用于正常关闭 websocket 连接

WebSocket Open Connection

用于显式设置websocket连接

WebSocket Ping/Pong

用于发送ping和接收pong请求

WebSocket Single Read Sampler

用于接收一个(文本或二进制)WebSocket 帧

WebSocket Single Write Sampler

用于发送一个(文本或二进制)WebSocket 帧

WebSocket request-response Sampler

用于执行基本的请求-响应请求

步骤2:采集器使用

下面对JMeter WebSocket Samplers各采集器的配置与使用进行说明

  1. 首选创建一个线程组,添加到测试计划中,添加->线程(用户)->线程组
  2. 添加一个WebSocket Open Connection采集器,线程组->添加->取样器->WebSocket Open Connection,该采集器为建立WebSocket连接

websocket压测方案,软件测试,Jmeter,性能测试,软件测试,jmeter,软件测试工程师,性能测试,压力测试

相关配置说明:

配置项

说明

协议

协议可以是WS或WSS,WSS是进行加密连接。

Server name or IP

域名或IP地址

Port

端口号

Path

路径,可为空

Connection timeout(ms)

建连的超时时间

Read timeout(ms)

等待服务器响应的超时时间

3. 添加一个WebSocket Ping/Pong采集器,线程组->添加->取样器->WebSocket Ping/Pong,该采集器用于发送ping和接收 pong请求

websocket压测方案,软件测试,Jmeter,性能测试,软件测试,jmeter,软件测试工程师,性能测试,压力测试

相关配置说明:

配置项

说明

ping/pong(send ping,expect pong)

用于发送ping和接收pong

pong(just send pong)

仅发送未经请求的pong

pong(read) timeout(ms)

表示如果JMeter在20秒内没有收到Pong消息,则Sampler将失效。此Sampler会复用已有连接

4. 添加一个WebSocket Single Read Sampler采集器,线程组->添加->取样器->WebSocket Single Read Sampler,用于接收一个(文本或二进制)WebSocket 帧

websocket压测方案,软件测试,Jmeter,性能测试,软件测试,jmeter,软件测试工程师,性能测试,压力测试

配置项

说明

use existing connection

复用已有连接

setup new connection

创建新的连接

Response (read) timeout (ms)

响应超时时间

5. 添加一个WebSocket Single Write Sampler采集器,线程组->添加->取样器->WebSocket Single Write Sampler,用于发送一个(文本或二进制)WebSocket 帧

websocket压测方案,软件测试,Jmeter,性能测试,软件测试,jmeter,软件测试工程师,性能测试,压力测试

配置项

说明

use existing connection

复用已有连接

setup new connection

创建新的连接

Request data

填写请求数据

6. 添加一个WebSocket request-response Sampler采集器,线程组->添加->取样器->WebSocket request-response Sampler,用于执行基本的请求-响应请求

websocket压测方案,软件测试,Jmeter,性能测试,软件测试,jmeter,软件测试工程师,性能测试,压力测试

配置项

说明

use existing connection

复用已有连接

setup new connection

创建新的连接

Request data

填写请求数据

Response (read) timeout (ms)

响应超时时间

7. 添加一个WebSocket Close采集器,线程组->添加->取样器->WebSocket Close,用于正常关闭 websocket 连接

websocket压测方案,软件测试,Jmeter,性能测试,软件测试,jmeter,软件测试工程师,性能测试,压力测试

配置项

说明

Close Status

关闭连接时定义的状态码,数据帧的头两个字节

Response (read) timeout (ms)

响应超时时间

8. 右键单击线程组,选择添加 -> 监听器 -> 查看结果树,在线程组中添加监听器查看结果树,用于接收服务端的消息响应。

步骤3:脚本执行

根据上面步骤二选择需要的采集器进行脚本编辑完成后,单击页面顶部的开始按钮,运行脚本。

通过查看结果树查看脚本是否运行正常。在左侧导航树中,选择查看结果树,查看请求结果是否符合预期。如果出现请求失败的,需要根据步骤二重新调整脚本。

---------------------------------------

 获取方式:留言【软件测试学习】即可

websocket压测方案,软件测试,Jmeter,性能测试,软件测试,jmeter,软件测试工程师,性能测试,压力测试

 结语

这篇贴子到这里就结束了,最后,希望看这篇帖子的朋友能够有所收获。

如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!文章来源地址https://www.toymoban.com/news/detail-620054.html

到了这里,关于“Jmeter WebSocket协议压测”,助你轻松应对高并发场景!的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • AI论文查重率怎么降低:七大策略助你轻松应对

    大家好,小发猫降ai今天来聊聊AI论文查重率怎么降低:七大策略助你轻松应对,希望能给大家提供一点参考。降ai辅写 以下是针对论文AI辅写率高的情况,提供一些修改建议和技巧,可以借助此类工具: 还有: AI论文查重率怎么降低:七大策略助你轻松应对 在学术写作领域

    2024年04月13日
    浏览(53)
  • AI写作查重率怎么降低:七大策略助你轻松应对

    大家好,小发猫降重今天来聊聊AI写作查重率怎么降低:七大策略助你轻松应对,希望能给大家提供一点参考。 以下是针对论文重复率高的情况,提供一些修改建议和技巧,可以借助此类工具: AI写作查重率怎么降低:七大策略助你轻松应对 随着AI技术的不断进步,AI写作已

    2024年04月11日
    浏览(56)
  • AI辅写疑似度高风险,七个策略助你轻松应对

    大家好,今天来聊聊AI辅写疑似度高风险,七个策略助你轻松应对,希望能给大家提供一点参考。 以下是针对论文AI辅写率高的情况,提供一些修改建议和技巧,可以借助此类工具: 还有: AI辅写疑似度高风险,七个策略助你轻松应对 随着AI技术的不断发展,AI辅写工具在学

    2024年02月19日
    浏览(55)
  • 论文查重有AI辅写疑似度?七个方法助你轻松应对

    大家好,今天来聊聊论文查重有AI辅写疑似度?七个方法助你轻松应对,希望能给大家提供一点参考。 以下是针对论文AI辅写率高的情况,提供一些修改建议和技巧,可以借助此类工具: 还有: 论文查重有AI辅写疑似度?七个方法助你轻松应对 在学术界,论文查重是确保学术

    2024年02月21日
    浏览(51)
  • AI辅写疑似度检测有什么软件?七大必备工具助你轻松应对

    大家好,小发猫降重今天来聊聊AI辅写疑似度检测有什么软件?七大必备工具助你轻松应对,希望能给大家提供一点参考。 以下是针对论文重复率高的情况,提供一些修改建议和技巧,可以借助此类工具: AI辅写疑似度检测有什么软件?七大必备工具助你轻松应对 在数字化内

    2024年03月15日
    浏览(62)
  • Jmeter性能压测 —— 高并发思路

    测试场景:模拟双11,百万级的订单量一个物流信息的查询接口。 条件:接口响应时间150ms以内。10万并发量每秒。 设计性能测试方案 1、生产环境 ①10W/S--并发量(架构师/技术负责人提供) ②20台机器(4G*4核配置) 2、性能测试环境 ①出于成本考虑,绝大多数公司,是做不

    2024年02月10日
    浏览(40)
  • JMeter实现持续压测websocket

    pjtr / JMeter WebSocket Samplers / Downloads — Bitbucket https://bitbucket.org/pjtr/jmeter-websocket-samplers/downloads/ 将下载的Jar包放在安装jmeter的/lib/ext路径下,重启生效 查看测试计划--》配置元件--》webSocket相关内容 查看用户组--》取样器--》webSocket相关内容 Sampler名称 说明 WebSocket Open Connection 建

    2024年02月04日
    浏览(44)
  • Jmeter并发压测-自定义不同请求参数

    目录 背景 下载Jmeter 1. 更改语言 2. 创建线程组 3. 添加变量 3. 创建Http接口 4. 创建察看结果树 5. 执行结果 虽然可以请求相同的接口做测试,但是请求参数每次都是相同的。为了模拟不同的用户,请求不同的参数,所以要自定义参数来做多线程并发压力测试。 https://jmeter.apac

    2024年02月04日
    浏览(47)
  • Jmeter多线程并发和压测结果分析

    一、多线程并发 1. 线程组简介: (1). 线程数: 配置虚拟用户数量 (2). Ramp-Up时间:设置的虚拟用户数需要多长时间全部启动,如果线程数为10,准备时长为2,那么需要2秒钟启动10个线程,也就是每秒钟启动5个线程。 (3). 循环次数 (4). 调度器-持续时间(秒),压测多长时间。测试

    2024年02月05日
    浏览(40)
  • 接口性能测试 —— Jmeter并发与持续性压测

    接口压测的方式: 1、同时并发:设置线程组、执行时间、循环次数,这种方式可以控制接口请求的次数 2、持续压测:设置线程组、循环次数,勾选“永远”,调度器(持续时间),这种方式可以控制压测周期时间 指定并发数 例1:设置线程数:10设置执行时间:0设置循环次

    2024年03月20日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包