Fork me on GitHub

【性能测试】-网络问题定位

目录

  • 总结:
  • 1、网络问题显示
  • 2、网络问题调优-keepalive-注册表
  • 三、服务端修改端口号范围
  • 四 、检查带宽
  • 五、网卡

 

正文

总结:

1、网络问题显示

项目实战:报错java.net.BindException: Address already in use: connect

HttpHostConnectException:Connect to 192.168.****:8080 [/192.168***] Connection time out
connect

 windows:

  • netstat -ano| find“TCP” /i /c
  • /i:搜索时不区分大小写
  • /c:统计搜索结果

linux/mac

  • netstat -ano| grep “TCP”| wc -l
  • ss -S

2、网络问题调优-keepalive-注册表

一、jmeter上 keep-alive去勾选

二、客户端端口-注册表修改端口范围

  • 注册表:[HKEY LOCAL MACHINEISYSTEMCurrentControlSetlServicesiTcpipiParameters
    • MaxUserPort: 有,设置为十进制的65534
    • 没有,则新增 DWORD,name为MaxUserPort value为65534
    • 重启系统
  • 注册表:HKEY LOCAL MACHINESYSTEMCurrentControlSetlServiceslTcpipiParameters
    • TcpTimedWaitDelay,有,设置一个十进制是时间,单位秒(默认240s)
    • 没有,则新增DWORD,name为TcpTimedWaitDelay value为十进制的时间30
    • 重启系统

三、服务端修改端口号范围

linux,如果你发发起方是Linux

  • sysctl -a |grep net.ipv4.ip_local_port_range
  • net.ipv4.ip_local_port_range = 32768 60999 =====2.8w

改端口范围:

sysctl -w net.ipv4.ip_local_port_range="1024 65535"
sysctl -p

 

四 、检查带宽

判断带宽有没有问题:

吞吐率
1Mbps = 1024Kbps = 1024/8 KB/s = 128KB/s

ping目标服务器
看时间 没有测试前的时间 与在进行性能测试时的 时间之间有没有明显的差异
看丢包: 如果有丢包 肯定时网络瓶颈

 

 

 

 

 

、网卡

网卡-网络传输介质与终端设备连接的关隘

>发起方/源
>windows10查看网络连接>选中网卡>状态====>速度1.0Gbps = 1024Mbps =1024 / 8MB/s = 128MB/s
100Mbps =100/8 MB/s = 12.5MB/s
>服务器方目的地
>linux ethtool网卡名称|grep Speed
修改命令: ethtool-s 网卡名称 Speed 1000

网络一一接收方限制-网络连接配置
sysctl:sysctl 用于运行时配置内核参数,这些参数位于/proc/sys目录下
>linux系统启动,依次读取
>/etc/svsctl.d/*.conf
>/run/svsctl.d/*.conf
>/usr/lib/sysctl.d/*.conf
svsctl --help

posted @ 2023-08-28 22:51  橘子偏爱橙子  阅读(28)  评论(0编辑  收藏  举报