服务端正常启动了,但是客户端请求不到

avatar
作者
筋斗云
阅读量:2

服务端正常启动了,但是客户端请求不到有哪些原因?如何排查?

如果客户端请求的接口没有响应,排查的方式:

  • 检查接口IP地址是否正确,ping一下接口地址。

  • 检查被测接口端口号是否正确,可以在本机Telnet接口的IP和端口号,检查端口号能否连通

  • 检查服务器的防火墙是否关闭,如果是以为安全或者权限问题不能关闭,需要找运维进行策略配置,开放对应的IP和端口。

  • 检查你的客户端(浏览器、测试工具),是否设置了网络代理,网络代理可以造成请求失败。

如果客户端的请求有响应,但是返回了错误状态码,那么根据错误码做对应的排查:

  • 400:客户端请求错误,比如请求参数格式错误

  • 401:未授权,比如请求header里,缺乏必要的信息头。(token,auth等)

  • 403:禁止,常见原因是因为用户的账号没有对应的URL权限,还有就是项目中所用的中间件,不允许远程连接(Tomcat)

  • 404:资源未找到,导致这种情况的原因很多,比如URL地址不正确

  • 500:服务器内部错误,出现这种情况,说明服务器内部报错了 ,需要登录服务器,检查错误日志,根具体的提示信息在进行排查

  • 502/503/504(错误的网关、服务器无法获得、网关超时):如果单次调用接口就报该错误,说明后端服务器配置有问题或者服务不可用,挂掉了;如果是并发压测时出现的,说明后端压力太大,出现异常,此问题一般是后端出现了响应时间过长或者是无响应造成的

服务端出现大量的timewait有哪些原因?

首先要知道 TIME_WAIT 状态是主动关闭连接方才会出现的状态,所以如果服务器出现大量的 TIME_WAIT 状态的 TCP 连接,就是说明服务器主动断开了很多 TCP 连接。问题来了,什么场景下服务端会主动断开连接呢?

  • 第一个场景:HTTP 没有使用长连接

  • 第二个场景:HTTP 长连接超时

  • 第三个场景:HTTP 长连接的请求数量达到上限

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!