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

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

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

  • 检查接口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 长连接的请求数量达到上限

相关推荐
@淡 定15 分钟前
异常处理最佳实践
java
一起养小猫17 分钟前
LeetCode100天Day1-字符串匹配与Z字形变换
java·leetcode
白宇横流学长19 分钟前
基于SpringBoot实现的冬奥会科普平台设计与实现【源码+文档】
java·spring boot·后端
APIshop30 分钟前
Java爬虫1688详情api接口实战解析
java·开发语言·爬虫
Evan芙1 小时前
Tomcat内存机制以及按场景调优
java·tomcat
总爱写点小BUG1 小时前
打印不同的三角形(C语言)
java·c语言·算法
星辰烈龙2 小时前
黑马程序员Java基础9
java·开发语言
山沐与山2 小时前
【Redis】Redis集群模式架构详解
java·redis·架构
ss2732 小时前
Java并发编程:DelayQueue延迟订单系统
java·python·算法
wcy_10112 小时前
七大软件设计原则
java·设计规范