线上问题-CPU使用频率飙升

描述

        中午收到群内人员反馈环境访问速度慢。登录验证码打不开等问题。通过查看日志发现是kafka出现问题,无法处理消息。联系运维解决。在排查的过程中使用mobaXterm连接服务器。左下角看到CPU使用频率非常高。于是记录一下通过CPU查看程序占用情况分析问题。

过程

查看进程的占用情况

        首先使用top指令可以查到CPU使用率,进程占用CPU的比例。   #搞个连接 Linux的指令详解~~

[root@home ~]# top

        84.8 us 就是此时CPU的使用率。下面的红框则是进程占用CPU资源的排名。可以看到前几位都是Java程序且占用资源较多。

查看线程的占用情况

        这时我们排查占用率第一个Java进程(该进程的PID 28594 上图可以看到)。看看这个Java进程中线程的占用情况。

top -p  28594 -H

        这样就可以看到该进程中每个线程占用了多少CPU

获取某个线程的栈信息

        根据上图找到使用率第一的线程 PID = 29171  转为16进制  = 71f3   拼接 0x   = 0x71f3

jstack 28594 |grep A 10 0x71f3

# 0x71f3  =  0x + 线程PID转16进制

        根据jstack指令可以获取到进程的栈信息。在通过grep过滤某个线程的栈信息。

总结

问题点

         1. 问题的发现是通过人员反馈。

         2. Kafka挂了

解决方案

        1. 增加监控。对中间件设备,业务服务的监控

                1.1 中间件设备的治理

                      使用zabbix(其他监控设备) 监听端口,ping,调用

                 2.2 对业务服务的治理

                      使用zabbix 监听服务端口,ping,调用健康检查接口(是否能正常响应,响应时间等)监听服务是否可用。

                      使用ELK收集服务日志。对错误的日志设置阈值。超过阈值则进行告警

                      分布式多节点部署服务。保证始终有节点提供服务。

         2. Kafka集群化分布式部署

                 2.1 kafka使用多节点集群部署。保证可用性。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值