【dubbo报错】Thread pool is EXHAUSTED

  |   0 评论   |   0 浏览

出现问题

线上并发太大,报了以下错误

com.alibaba.dubbo.common.threadpool.support.AbortPolicyWithReport -  [DUBBO] Thread pool is EXHAUSTED! Thread Name: DubboServerHandler-xxxx:20880, Pool Size: 200 (active: 198, core: 200, max: 200, largest: 200), Task: 1565478 (completed: 1565280), Executor status:(isShutdown:false, isTerminated:false, isTerminating:false), in dubbo://xxxxx:20880!, dubbo version: 2.6.0, current host: xxxxxx

从报错信息看,应该是线程池超了。

分析问题

查看官方文档,看到默认的配置为
<dubbo:protocol name="dubbo" dispatcher="all" threadpool="fixed" threads="100" />
下面是官方对参数的解释:
imagepng

解决问题

可以根据实际情况,来设置线程大小
<dubbo:protocol name="dubbo" dispatcher="message" threadpool="limited" threads="500" />

SpringBoot的配置

spring.dubbo.protocol.threads = 500
spring.dubbo.protocol.dispatcher =message

也可以关注我的公众号,及时获取最新文章

关注公众号,回复:下载
获取百度下载神器:
imagepng

本文为博主原创文章,未经博主允许不得转载。