java.io.IOException: Broken pipe

先了解一下 java.io.IOException: Broken pipe
pipe是管道的意思,管道里面是数据流,通常是从文件或网络套接字读取的数据。 当该管道从另一端突然关闭时,会发生数据突然中断,即是broken

场景:我们平台(简称A)调用其他小组平台(简称B平台)

调用方式:httpclient post请求

问题:A调用B平台接口,B平台接口正常执行,但是返回结果很忽快忽慢(可能是他们接口原因),慢的时候可能***10分钟***都没有响应时间。

导致结果:在并发量大的情况下A平台的该接口因为长期没收到返回结果,然后还不断的有请求进来,会导致线程阻塞,就会报java.io.IOException: Broken pipe,最后还会有可能影响项目中其他接口的速度,

下面是我们的报错日志
user/getUserDaBiaoScore该接口调用B平台接口响应慢报错
请求方式:[GET]
请求路径:[user/getUserDaBiaoScore]
请求参数:[]
异常信息:[java.io.IOException: Broken pipe]
login/loginOut 该接口为退出接口,应该是受上面的接口影响导致报错
请求方式:[GET]
请求路径:[/login/loginOut]
请求参数:[]
异常信息:[java.io.IOException: Broken pipe]

解决思路:设置一个时间,当B平台接口多少秒内没有返回结果就直接抛弃此次请求(因为这个接口对我们来说不是很重要,只是一个显示用户达标数据)。
一开始想着设置

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
java.io.IOException: Broken pipe异常通常是在网络连接断开时出现的错误。这个异常意味着服务器在尝试向客户端写入数据时,客户端已经关闭了连接,导致连接被中断。这个异常通常发生在服务器正在向客户端发送响应时,而客户端在接收响应之前就关闭了连接。 根据引用中的描述,这个异常可能是由于客户端的网络请求连接超时时间设置得过短而引起的。当服务器建立的网络连接还没有完全写入数据时,客户端就关闭了连接,就会出现这个异常。 从引用的堆栈代码中可以看出,这个异常发生在OutputBuffer#realWriteBytes方法中。这个方法负责将缓冲区的数据发送给客户端,并检查响应的状态。当检测到异常时,通常会抛出一个ClientAbortException异常。 综上所述,java.io.IOException: Broken pipe异常是由于客户端在服务器发送响应之前关闭了连接引起的。这可能是由于客户端的网络请求连接超时时间设置过短导致的。为了解决这个问题,可以适当调整网络请求连接超时时间,确保服务器能够完整地向客户端发送响应。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [java.io.IOException: Broken pipe](https://blog.csdn.net/shichen2010/article/details/121769535)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值