You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicecomb.apache.org by GitBox <gi...@apache.org> on 2021/10/08 06:57:14 UTC

[GitHub] [servicecomb-java-chassis] liubao68 commented on issue #2601: vert.x-worker-thread处理PipedInputStream,连续8次取消response后,服务端无法正常返回响应消息

liubao68 commented on issue #2601:
URL: https://github.com/apache/servicecomb-java-chassis/issues/2601#issuecomment-938393723


   <<< “客户端接收音频数据后播放,播放存在取消操作,也就是数据接收一部分之后,客户端会存在response.close()操作。
   服务端在catch到Pipe closed异常后,会取消后续的业务操作,节省资源”
   
   正常情况下, 客户端关闭连接, 服务端会接收到连接关闭事件。如果没有, 那么服务端会等到请求超时或者连接闲置时间后关闭连接。 
   
   可以首先确认下每次取消操作, 服务端的链接资源是否都及时被释放了。如果没有, 那么频繁的取消, 会导致这个现象。 即使通过扩大线程池, 可以多支持几个取消, 但仍然无法保证频繁的取消能够功能正常。 
   
   9次取消, 可能和worker pool size的设置有关系,和event loop size应该没关系, 可以从堆栈里面看出来, event loop 全部都是闲置的状。 最新代码默认值是20个, 1.3.2版本可以查询代码分析下。 
   
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: commits-unsubscribe@servicecomb.apache.org

For queries about this service, please contact Infrastructure at:
users@infra.apache.org