jmeter压测学习1-window环境准备与案例

前言

最近用jmeter做一些接口的压力测试,记录下使用过程中遇到的一些问题。
在使用window机器做并发压测的时候,发现并发数设置100的时候,会出现报错:java.net.SocketException: Socket operation on nonsocket: connect

环境准备:
java 1.8
jmeter 5.1.1

jmeter环境

jmeter环境依赖JAVA环境,需安装JDK1.8环境,JDK环境安装网上一大堆教程,自己去想办法吧,我这里就不多说了。

jmeter的安装包,网上随便下载一个就可以了https://jmeter.apache.org/download_jmeter.cgi

下载zip包,解压到本地,打开apache-jmeter-5.1.1\bin目录,找到jmeter.bat双击就可以了

需求案例

压测的接口是我本地随便写的一个接口,接口相关信息如下

接口访问地址:http://127.0.0.1:8000/api/test/demo
请求方式:get

本次测试目标:设置50,100, 200并发数,测试服务器发最大TPS值

jmeter压测

打开jmeter界面添加线程组,设置虚拟用户数100(也就是并发数),每秒启动100个线程,循环1000次

添加http请求

  • 请求方式: http
  • ip地址:也就是你部署服务的机器的ip,本机可以写127.0.0.1
  • port端口:8000
  • HTTP请求方式: get
  • Path 接口的地址: /api/test/demo

添加查看结果数和聚合报告

100并发报错

当并发数设置100,启动测试后,会出现报错:java.net.SocketException: Socket operation on nonsocket: connect

  • 新建DWORD值,name:TcpTimedWaitDelay,value:30(十进制)设置为30秒

  • 新建DWORD值,name:MaxUserPort,value:65534(十进制)最大连接数65534

右键-新建DWORD值

重命名后,选中十进制,设置对应的值

新建DWORD值,name:MaxUserPort,value:65534(十进制)最大连接数65534

相关文章