解析org.apache.catalina.connector.ClientAbortException: java.io.IOException: Broken pipe
发布日期:2021-06-29 13:14:07 浏览次数:2 分类:技术文章

本文共 622 字,大约阅读时间需要 2 分钟。

前段时间翻服务器应用运行日志,看到这个,作为爱学习的我,立马百度了一下:

认识broken pipe

pipe是管道的意思,管道里面是数据流,通常是从文件或网络套接字读取的数据。 当该管道从另一端突然关闭时,会发生数据突然中断,即是broken。 对于文件File来说,这可能是文件安装在已断开连接的光盘或远程网络上。 对于socket来说,可能是网络被拔出或另一端的进程崩溃。 在Java中,没有具体的BrokenPipeException。 将此类错误包含在另一个异常,例如java.io.IOException:Broken pipe

 

问题分析:

1、报文过大:处理的报文过大,导致客户的端无法解析报文。 

2、文件过大:处理时间过长,由于执行时间较长或频率较高,程序或服务器出发超时直接结束进程。

3、重复提交:处理时间过长导致当客户端重复发送请求,而上次请求尚未完成,下次请求会close上次请求。

4、数据库配置问题:mysql配置文件忘记配置wait_timeout参数,导致数据库连接顺序关闭(RS、PS、CONN)。

5、另外就是:Java虚拟机内存太小或者使用低版本的JVM,出发垃圾回收。 

 

由于kill进程我们无法控制,故只能通过降低接口处理时间,减少用户kill进程时未完成的TCP连接数量。

具体:

  1. 会话列表翻页
  2. 会话列表限制展示数量
  3. 客户端分组获取会话列表数据

当然,对于服务器来说,该底层异常,并不影响,所以暂可忽略

 

转载地址:https://changemax.blog.csdn.net/article/details/102487757 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:idea
下一篇:消息中间件:消息队列(Message Queue)解读

发表评论

最新留言

初次前来,多多关照!
[***.217.46.12]2024年04月03日 20时34分53秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章