IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发测试 -> 08-Jmeter之TPC长连接测试 -> 正文阅读

[开发测试]08-Jmeter之TPC长连接测试

虽然目前大部分的接口都是HTTP协议的,但是在工作中还是少不了TCP/IP协议的接口需要进行测试,我们也称长连接测试。下面从两个方面来了解一下Jmeter的TCP协议的测试。

1. 使用Jmeter进行常规的TPC连接设置时的配置参数都是哪些?

  • 首先打开Jmeter,右键线程组添加取样器-选择TCP取样器进入到TCP取样器配置界面:
    在这里插入图片描述
  • 第二步进入到TCP连接的配置页面:
    在这里插入图片描述
    各个参数值以及含义:
    1、名称,可自定义取样器的名称。
    2、Jmeter原生支持的消息体类型,一共有三种类型:
    a:org.apache.jmeter.protocol.tcp.sampler. TCPClientImp 以纯文本为内容进行发送
    b:org.apache.jmeter.protocol.tcp.sampler. BinaryTCPClientImpl 以文本编辑器中所编辑的16进制字符(hex)内容为基础转换为二进制的 字节内容进行发送
    c:org.apache.jmeter.protocol.tcp.sampler. LengthPrefixedBinaryTCPClientImpl 在BinaryTCPClientImpl基础上默认以发送内容的长度为 字节前缀进行填充
    3、服务器的ip地址:也就是你要链接到那个服务器的IP地址
    4、服务开放的端口:需要连接的服务器对应端口号
    5、超时时间:设置超时时间后,在多少ms内没有收到响应就会响应失败;
    6、重用连接:选择后建立的连接保持打开状态(前提是Jmeter进程在持续运行,比如你设置100线程数,循环一次,当100线程数跑完后,相当于任务结束,Jmeter会自动断开连接)
    7、关闭连接:当选择之后,每运行完一个线程就会把响应的连接关闭,相当于是运行一个关闭一个
    8、设置无延迟:
    9、行尾字节值:比较重要,是Jmeter读取服务器返回内容时候结束标志的判断。它表示的是服务端发送的最后一个字符的ascii码,如果不写或者写的不正确的话,在读取流的时候无限阻塞,直到超时。比如,如果服务器端返回的最后一个字符是"\n",那么该位置就要填写10
    10、要发送的文本:根据选择的TCP Client classname 来填写对应的要发送的文本信息
    11、用户名核密码:默认在现实中不使用

2. 如何保持长连接?

  • 保持长连接的基本条件为线程持续工作:
  • 1、设置普通线程组,比如线程数设置100,循环设置为永远,Jmeter将在核服务器建立连接之后,保持这100个连接通道,通过这100个链接通道,持续的发送消息(这里需要在TPC取样器中 设置选择 重用连接),如果我们要建立10000个连接,那么就需要设置10000个线程数:
    在这里插入图片描述
  • 2、设置阶梯压测线程组(可以同时观察接口的压力),在添加线程组的时候选择阶梯压测线程组:该线程组如果无法添加的话可以查看这篇文章:什么是阶梯式压测?
    在这里插入图片描述
    添加完线程组后开始配置线程组。比如配置最终希望起30000个线程,5s后开始启动,第一次启动200个线程,往后每3秒启动200个线程一直到线程数达到30000,之后保持稳定运行1800s,之后每1秒停掉5个线程,直到所有线程停止完毕:
    在这里插入图片描述
    在开始停掉线程之前,所有建立的连接通道都是保持连接的。我们可以通过这种方式来简单的查看一下,这种条件下最大能够保持的连接数。当然也可以尝试,在不同的服务器上启动Jmeter程序,同时建立TCP连接,来观察客户端和服务端能够保持的最大连接数。

客户端能创建和服务端能接收的连接数各是多少??

在进行测试的时候要明确:
①、客户端能创建的连接是多少?比如一个jemter进程,最多能创建的线程数是多少?
②、服务端能接收的连接数是多少?比如服务端能接受20000连接,但是Jmeter只能创建10000,当超过10000的时候Jmeter就会出现无响应状态,就说明客户端到达了一定的瓶颈,但是服务端还能再继续接收来自客户端的连接数。

  开发测试 最新文章
pytest系列——allure之生成测试报告(Wind
某大厂软件测试岗一面笔试题+二面问答题面试
iperf 学习笔记
关于Python中使用selenium八大定位方法
【软件测试】为什么提升不了?8年测试总结再
软件测试复习
PHP笔记-Smarty模板引擎的使用
C++Test使用入门
【Java】单元测试
Net core 3.x 获取客户端地址
上一篇文章      下一篇文章      查看所有文章
加:2022-04-18 18:12:40  更:2022-04-18 18:14:34 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/19 13:17:25-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码