实战webSocket压测(二)jmeter配置webSocket连接

背景

我们可以通过Jmeter添加插件实现webSocket脚本编写。WebSocket的插件较多,我选择以WebSocket Samplers by Peter Doornbosch为例来进行配置。

步骤1、WebSocket Samplers插件安装

  1. 下载地址:JMeter WebSocket Samplers,建议下载最新版本。
  2. 下载的插件放置在jmeter安装目录下的lib->ext文件夹下
  3. 打开jemter添加取样器,查看是否安装成功,如果可以选择到websocket相关链接代表成功。
采集器名称 说明
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 用于执行基本的请求-响应请求
  1. 注意:

    因为WebSocket是长连接流式通讯,所以可能存在发送一个请求收到多条响应的情况。收到的响应会以先后顺序排在一个响应队列中。当执行一个有读操作的Sampler时,就从队列头部取出一个响应;每当收到一个响应时,就将其放到队列尾部。

    WebSocket Single Read Sampler是一个只读Sampler,它只从队列头部读取一个响应,如果读不到就等待,直至超时。

    WebSocket Single Write Sampler是一个只写Sampler,它只向连接通道发送一个请求且不等待响应。

    WebSocket Request Response Sampler是一个读写Sampler,它向连接通道发送一个请求,然后从响应队列头部读取一个响应,如果读不到就等待,直至超时。

    如果放置的读Sampler和写Sampler数量不合适,可能会出现读到的数据错位的现象。

    (比如:服务端每2秒固定生成1个通知消息,添加到队列中,那么20秒以后,队列中已经有10条消息,此时,你触发1条请求,服务端对该请求进行响应,你需要读取11次才会拿到该响应值,前10次拿到的是已经生产的队列中的通知消息)

相关推荐
隐擎fox6 小时前
高性能网络爬虫架构设计:基于 Python 的长连接复用与分布式会话池调度实践
分布式·python·网络协议·tcp/ip·高并发·网络爬虫、
IT摆渡者8 小时前
1panel 配置申请手动解析网站SSL证书
服务器·网络协议·ssl
易岳群8 小时前
物联网 MQTT 方案:服务端如何通过 MQTT 生命周期维护客户端设备状态
物联网·网络协议
AIFQuant12 小时前
Python实时外汇行情接入实战:WebSocket与REST K线查询
开发语言·python·websocket
2501_9378609412 小时前
网络核心|OSI七层、TCP/IP五层模型,封装和分用详解
网络·网络协议·tcp/ip
宵时待雨14 小时前
linux笔记归纳18:传输层协议TCP
linux·网络·笔记·网络协议·tcp/ip
hanchenxing14 小时前
自动化脚本“卡住无输出“怎么办: 一次 WebSocket 挂死的排查与自愈模板
运维·javascript·chrome·websocket·自动化·自动化爬虫
captain37615 小时前
▲网络原理(1)-UDP
网络·网络协议·tcp/ip
minhuan15 小时前
心理访谈转录平台构建:流式VAD采集、声纹聚类、WebSocket实时推送全链路项目解析27.0
websocket·大模型应用·心理访谈转录平台·流式vad采集·声纹聚类·websocket实时推送
开开心心就好16 小时前
清理此电脑网盘图标工具,开源免费好用
网络·网络协议·tcp/ip·智能手机·电脑·scala·erlang