• JMeter webSocket协议


    WebSocket 协议简介

    WebSocket 是一种应用层协议,可以实现持久连接的全双工双向通信,属于服务端推送技术。

    HTTP 协议是单向通信协议,只有客户端发起HTTP请求,服务端才会返回数据。而WebSocket协议是双向通信协议,在建立连接之后,客户端和服务器都可以主动向对方发送或接受数据。WebSocket协议建立的前提需要借助HTTP协议,建立连接之后,持久连接的双向通信就与HTTP协议无关了。

    WebScoket 使用了自定义协议,所以URL与HTTP协议略有不同,未加密的连接为ws://,加密的连接为wss://

     

     

    使用 WebSocket Sampler 实现

    1)按 F12 打开浏览器开发者工具,选 Network > WS过滤出 websocket 协议的接口

    2)在JMeter Plugins Manager 中安装 WebSocket Sampler by Maciej Zaleski,重启JMeter

    3)右键添加取样器 WebSocket Sampler

    Server Name or IP:服务器地址

    Port Number:websocket 监听的端口号,默认80

    Connection:连接超时时间(连接花费时间较长时,要将超时时间设置大一点)

    Response:响应超时时间

    Implementation:目前只支持RFC645(V13),WebSocket协议标准的最新版

    Protocol:协议(ws、wss)

    Content encoding:编码

    Connection Id:连接标识

    Ignore SSL certificate errors:是否忽略SSL证书错误

    Streaming Connection:是否保持TCP session,如果勾上标识连接会一直存在,如果没有勾上,那么得到第一次响应后该链接就会被关闭。

    Request data:填入将要发送的请求(Messages中客户端发送的数据)

    Response Pattern:采样器将等待含有该标识的消息并继续通信(或者直到timeout,该连接关闭)

    Close Connection Pattern:如果服务器返回的消息含有这样的字符,就结束会话。

    Message Backlog:定义服务器返回消息保留的最大长度

     

    使用 WebSocket request-response Sampler 实现

    1)在JMeter Plugins Manager 中安装 WebSocket Samplers by Peter Doornbosch插件

     重启JMeter,取样器中会多出下图的几个选项

    2)右键添加取样器 WebSocket Open Connection(建立连接)

    websocket发送数据到后端,与http请求的原理是相通的,所以发送的数据如果含有非常字符,如"/"、"+"、"%"、引号等,就会引起解析错误,需要用__urlencode()函数进行URL转码。

     3)右键添加取样器 WebSocket request-response Sampler

     

    use existing connection:使用现有的连接

    setup new connection:创建新的连接

    Data:支持Text文本(包括JSON)和Binary二进制数据的发送。默认请求响应的超时时间为6S,超过这个时间报错。

    4)右键添加取样器 WebSocket Single Read Sampler (模拟消息的已读回执)

  • 相关阅读:
    Activity具体解释(生命周期、以各种方式启动Activity、状态保存,全然退出等)
    StringBuffer和StringBuilder使用方法比較
    python 多线程编程
    八大排序算法总结
    腾讯面试
    顶尖的个人作品集站点设计赞赏
    MATLAB新手教程
    ThreadPoolExecutor使用介绍
    linux diff具体解释
    Android借助Application重写App的Crash(简易版)
  • 原文地址:https://www.cnblogs.com/scholars-xian/p/11697238.html
Copyright © 2020-2023  润新知