笔者作为研发,细细数来已经搬了多年程序的砖了,也带了不少新人,发现好多新人都有如题的提问。这里珍重申明我并不是歧视新人哈,只是想根据老程序猿搬砖的经验,分享一下问题排查经验。或许对焦头烂额的你会有那么一点点启发。
相似的问题
相同的问题还有很多,比如程序隔一段时间程序特别卡,比如运行一段时间就报错宕机,又比如读取的配置怎么和自己配置的不一致,很多时候本地没有问题,一上测试环境就报错等等如此玄学的问题这么多年是屡见不鲜。
出现上述问题具体怎么做呢?
请容许笔者在这里高谈阔论,一半遇到这类玄学问题首先请保持淡定,特别是紧急的情况下,然后可以从如下方面入手分析:
1. 第一时间看执行日志(这个很重要)
2. 是不是配置有问题,或者是线上读取配置有问题。
3. 是不是参数配置不够优化。
4.是不是对使用组件框架机制/原理不够了解。
5. 运行的物理规格有没有问题。
基本操作
发现问题,第一时间看日志 ,通过日志反向排查问题原因 ,在过程中结合你使用的框架/组件的机制去排查问题会更容易找到问题。 找到问题原因那就成功了90%,剩下就是用10%去优化和修改问题。