其他分享
首页 > 其他分享> > Dubbo 线程池占满可能原因分析

Dubbo 线程池占满可能原因分析

作者:互联网

可能原因:(1) dubbo中有httpClient调用。

由于http工具默认仅支持 5 个并发,且有线程池队列,当请求量超过 5 个的时候,多余的请求会在队列中堆积。前一批http请求结束之后其他的请求才会继续执行,越到后面线程等待时间会越长。所以对应实际业务场景中dubbo线程等待的时间也会越长,当这个队列到一定数量之后,就会引起dubbo默认200个线程池被占满的情况,从而引起整个应用服务的报错。
(2) 业务代码中,有异步调用,但异步调用又使用了默认的线程池,很容易把线程池用光,间接导致dubbo线程占满。

(3) dubbo接口中,处理大对象,导致频繁FGC, 请求不断,但STW时间过长,也会导致dubbo线程池占满。

参考:

https://blog.csdn.net/wsmalltiger/article/details/124236055

标签:Dubbo,池占满,调用,请求,dubbo,队列,默认,线程
来源: https://www.cnblogs.com/maohuidong/p/16657346.html