接到一个项目需求,其中需要调用到供应商的Http API,因为有大量的测试资源,所以代码中会循环调用API。
然而在测试代码执行过程中,过程中偶尔报错:

此时看到报错,怀疑是可能是同时并发的问题,
但实际上并未对该接口进行限制,所以应该不是这个的问题, 进一步查看其他的报错的信息
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPSConnection object at 0x0C9C64F0>: Failed to establish a new connection: [WinError 10048] 通常每个套接字地址(协议/网络地址/端口)只允许使用一次。
此错误原因指示是:一个通讯端口只能用一次
通过以下命令查看 TCP连接状态
ping host地址
netstat -ano | findstr IP

发现大量请TCP连接处于TIME_WAIT状态。
从上面TCP连接来看, 本地IP和服务端IP、服务端 端口都是固定不变的,而本地的端口是变化的。本地端

在批量调用HTTP API时遇到[WinError 10048]错误,排查发现大量TCP连接处于TIME_WAIT状态。问题源于连接请求量过大、TIME_WAIT时间过长导致端口不足。解决方案包括缩短TIME_WAIT时间及增加本机最大端口数。
最低0.47元/天 解锁文章

1万+

被折叠的 条评论
为什么被折叠?



