同事反馈,系统使用过程出个别时候会出现错误,系统使用srpingMvc+spring+mybatis+dubbo的微服务架构。检查日志看到如下异常信息:
Caused by: java.util.concurrent.RejectedExecutionException: Thread pool is EXHAUSTED! Thread Name: DubboServerHandler-10.8.64.57:20880, Pool Size: 200 (active: 200, core: 200, max: 200, largest: 200), Task: 5823
通过字面大致意思是,dubbo线程池资源消耗完了。最近也没有大的系统升级,目前服务端采用的是默认设置,dubbo.xml修改前配置。
<dubbo:protocol name="dubbo" port="20881" />
修改后
<dubbo:protocol name="dubbo" port="20881" threadpool="fixed" threads="500" />
观察几分钟,查看日志,比之前会少一些报错,异常还是存在。使用java的jstack命令导出日志再次进行分析。
at java.net.SocketInputStream.socketRead0(Native Method)
at java.n