会员登录 - 用户注册 - 设为首页 - 加入收藏 - 网站地图 记一次敖丙Dubbo线程池事故排查!

记一次敖丙Dubbo线程池事故排查

时间:2025-11-04 23:21:30 来源:益强数据堂 作者:系统运维 阅读:282次

前言

duubo在互联网技术中是记次中的非常广泛的,从我实习到现在我所在的敖丙公司,都是程池使用的dubbo做rpc框架,所以这也导致了我们需要更加深入的事故去了解这门技术,因为我们的排查遇到的问题无时无刻都会存在,本次我就跟大家讲讲我的记次一次线上dubbo线程池耗尽的事故排查思路。

我写过dubbo系列的云南idc服务商敖丙文章,大家看完这章后想了解更多dubbo细节可以查看往起文章:

Dubbo

高性能NIO框架-Netty Netty常见面试题总结 敖丙RPC的程池超时设置,一不小心搞了线上事故 敖丙找出Dubbo源码BUG,事故三歪夸了我一天 Dubbo基础 Dubbo的排查服务暴露过程 Dubbo的服务引用过程 Dubbo服务调用过程 Dubbo的SPI机制是啥? Dubbo集群容错负载均衡 Dubbo面试题 RPC实践 Netty

问题

在一天早上突然手机收到公司服务告警短信,线程池耗尽了?记次在去公司的路上首先回想的就是最近公司有活动?流量突增?大早上就有人在发布系统?还是某歪趁我不在又点坏了我的系统?

怀着种种思考在公司的群里看着同步信息,以上种种可能都被反驳!!!

以下就是服务器租用敖丙当时的告警信息:

RejectedExecutionException:Thread pool is EXHAUSTED (线程池耗尽了)! Thread Name: DubboServerHandler-xx.xx.xxx:2201, Pool Size: 300 (active: 283, core: 300, max: 300, largest: 300) 

Q:这个问题怎么出现的呢?是不是我们扩大线程池就能解决问题呢?dubbo里面线程池默认实现是什么呢?

A:我们在排查问题的时候一定要有一种必须查出因果关系的思想才能对自己有一定的提升,凭借着这种思想我们一步一步向下揭开谜底。程池

带着问题,事故接下来我们去查看dubbo的排查代码配置,了解dubbo底层实现,只有了解底层实现我们才能更加准确的发现问题,处理问题,b2b信息网提升自己......

首先我们看下我们代码配置:

<dubbo:protocol name="dubbo" port="${service.protocol.dubbo.port}" threads="${service.protocol.dubbo.threads}" register="${service.protocol.dubbo.register}" /> 

(责任编辑:应用开发)

推荐内容
  • 电脑按键使用教程(简明易懂的电脑按键使用指南,快速学会提升工作效率)
  • 新型SLAM侧信道攻击曝光,Intel、AMD和Arm CPU均受到影响
  • DB2并发连接时的性能考虑
  • 证明DataReader分页的可行性
  • 如何通过改机械键盘音效提升打字体验(利用电脑键盘改造教程打造个性化机械音效)
  • 设计安全高效网络的17个关键策略