故障排查:记一次 dubbo 调用长耗时问题排查与修复
摘要
本篇文章,和大家分享一下之前发生在生产环境的一次问题排查与分析过程,这个问题本身并没有特别复杂,但需要排查的同学足够的细心谨慎,能从监控及日志中提取关键信息,一步步缩小问题范围并最终定位到问题点,这个问题点一般都可以具体到一行确定的代码,即问题代码。但”问题代码“往往并不一定是”错误代码“,由于运行时因为一些其他因素,导致这行看上去完全正确的代码,运行出了不符合预期的结果,而这个结果也可能是偶发的,即它没有固定的发生条件,比如发生时间、发生节点和发生数据等等,这也是大部分疑难故障难以直接通过review代码的方式来定位的原因。
因此,我们排查问题时,切勿想当然,而是要严格基于现有的数据”大胆假设小心求证“,并适当使用排除法,真相一定只有一个。
欢迎在评论区写下你对这篇文章的看法。