当前位置:首页 > 操作系统 > Linux

一次linux服务器load高达600多的异常处理过程

#一次服务器load值狂飙的处理过程以及思路 处理时间:2016_11_22:17:00 


#收到报警78服务器load值报警,登录机器uptime查看load值

技术分享650) this.width=650;" src="/upload/getfiles/default/2022/11/8/20221108011427859.jpg" title="CE2B8634-FAF7-454B-8B16-FCCDCA5C04DC.png" />

#load值超高,第一反应top一下,想找出来是哪个程序消耗了大量的cpu

技术分享650) this.width=650;" src="/upload/getfiles/default/2022/11/8/20221108011428158.jpg" title="94F056DB-B5D9-41A5-A4CC-E2F5172FC045.png" />

#没有发现,接着就是vmstat查看正常,iostat,free -m,一切正常,有几个操作未截图

技术分享650) this.width=650;" src="/upload/getfiles/default/2022/11/8/20221108011428622.jpg" title="DD44C43E-F99B-40ED-B05A-45725C7857AB.png" />

#当这一切都正常的时候人有点懵逼,甚至都准备去看看源码uptime 的load值是怎么计算出来的

然而找到了代码块并看不懂,继续查看问题,执行了netstat查看到有syn_recv这就证明有服务建立

连接失败,于是找到这个程序,然后netstat -tnlp|grep 看了一下。技术分享650) this.width=650;" src="/upload/getfiles/default/2022/11/8/20221108011428881.jpg" title="FCDA40BC-581B-48AC-9544-8A85B3F94B42.png" />

#开始怀疑这个java程序有问题,于是查看日志,当天是11月22号,而程序日志在11月20号5点32分就停了,于是确定程序问题。

技术分享650) this.width=650;" src="/upload/getfiles/default/2022/11/8/20221108011429112.jpg" title="B6774D92-A78F-4850-842E-4EE4306814ED.png" />

#执行重启tomcat命令,这个就不用讲了,进入bin目录shutdown.sh 发现进程没了之后startup.sh

然后等了几分钟load就降下来了

技术分享650) this.width=650;" src="/upload/getfiles/default/2022/11/8/20221108011429352.jpg" title="EB4D7F02-8C43-41DE-B3E1-81449A4124C0.png" />


纪录一下处理故障的思路和经历,说起来比较轻松,但是实际还是花了一定的时间,在执行netstat之前毫无思路,卡了一段时间,都准备翻阅源码,比较尴尬,而且也没找到更深层次的原因。


本文出自 “xiaofanqie” 博客,请务必保留此出处http://xiaofanqie.blog.51cto.com/9400142/1875514

原文:http://xiaofanqie.blog.51cto.com/9400142/1875514


【说明】本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!