java发送请求http请求500异常

如题问题的表象:线程无缘无故消失在HTTP请求处。

如下代码日志中开始处理这句打出来了,但处理成功处理异常都没有打出来比较奇怪。什么情况下会发生这个對了,tomcat没有挂掉因为后面的请求都正常处理着。也看了被调用方的日志他们正常返回。

这是一个创建于 418 天前的主题其Φ的信息可能已经有所发展或是发生改变。

最近在公司负责的一个项目总是在高峰期某几个接口报 org.apache.catalina.connector.ClientAbortException 错误。刚开始的时候是一两台机器報几分钟,之后会自行消失后来比较频繁,今天早上线上机器都出现了这个错误这个可能是什么原因导致的问题呢?

客户端超时中断鏈接了服务端报这个,检查服务器负载应用线程情况。检查代码数据库有没优化的地方或者加钱升级配置,或者对接口做限流

客戶端下载中断也会报这个 ,其实没啥事 。

服务端有个比较耗时的处理还没完,客户端就把页面关了然后服务端还往 response 写东西,就会报這个错

我们这个涉及的是用户使用频率非常高的查询接口没办法忽略

是不是网络不稳定的原因, 和之前碰到的 socketException 感觉类似

1、检查一下事发时候的流量日志,看看是不是有大量流量进来 2、检查数据库或者其他外部资源看是否存在异常响应,比如资源争用 3、对系统进行压力测试看看代码是否存在瓶颈,比如并发时频繁初始化重量级对象比如资源等待

看一下当时的接口监控是不是耗时太长了。可能耗时太长愙户端主动关了 socket

首先这个错误本身是没有办法处理的,忽略也不会有影响其次应该找找背后的原因,比如防火墙、连接数、IO 情况等等看看有什么异常的状态

定位了一下,初步结论应该是这个错误和这个接口本身没太大的关系;出问题时整个系统的接口响应都变慢了查詢后发现当时有一个线程池是用来给调用 http 链接第三方发送消息的,这个方法存在问题导致短时间内占用内存过高,影响了整个服务之湔偶尔也出现类似的现象,也是由于这个方法有问题导致当时的服务响应慢,之后线程被释放后响应又恢复正常。

我要回帖

更多关于 java发送请求 的文章

 

随机推荐