当服务器出现问题时的一些思路

又换工作了,不得不说我找到垃圾公司的概率还是很大的,然后最近面试的时候被问到关于出现宕机的时候的思路。当时答的不是很好,后来又遇到了实际的问题,想着就记录一下。


==================================================================================================

出现宕机的时候,应该先去确认是服务器代码的问题还是数据库的问题,先说一下服务器代码的问题:如果出现服务器宕机,这时候要看是不是服务器的cpu的占用率是不是过高,以linux为例:

1.通过top命令查看当前cpu的内存使用情况:

top

在这里插入图片描述

2.获得cpu占用率过高的pid,根据pid查询出cpu占用过高的线程id(tid):

top -H -p 17123 (-H 指显示线程,-p 是指定进程)

在这里插入图片描述

3.根据线程id将其从十进制转换为十六进制

printf “%x\n” 15568

4.通过jstack命令获取当前线程栈,可暂时保存到一个文件tempfile.txt中。

jstack pid | grep '0x7f1'

5在tempfile.txt中查找nid=0x7f1的线程

在这里插入图片描述

常用命令

查看指定进程下线程的ID,时间,cpu,内存情况并根据消耗时间排序

ps -mp 9793 -o user,pid,ppid,tid,time,%cpu,%mem,cmd | sort -rk5

 

有不对或者不全面的地方欢迎指出

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值