◆◆0Linux服务器进行性能优化中,CPU 相关指标异常的分析思路是什么? 黛云轩 2021/12/22 云圈子 399 1 百度已收录 阿里云双十二 新老用户服务器仅需57元起 双十二低至1折 1核2G 云服务器390元/1年 学生用户专属 18-24岁用户直享¥9.5/月 云·速成美站 千套模板,自己动手建网站 企业用户优选 2核8G内存5M带宽1015元/3年 多产品一键采购 购物车采购可减5000元 云服务器全球购 海外1核2G服务器低至2折 腾讯云双十一 2核4G 3M 698元/3年 过期域名预定 过期域名快速查询和抢注服务 ECS 云服务器 SWAS 轻量应用服务器 RDS 云数据库 Redis 云数据库 CDN 内容分发 OSS 对象存储 SLB 负载均衡 NAT 网关 DNS 云解析 MAIL 企业邮箱 WAF 应用防火墙 DDoS 高防 SMS 短信包 MK 云市场 XIN 心选 IM 商标注册 JZ 自营建站Linux服务器进行性能优化中,CPU 相关指标异常的分析思路是什么?上一篇: 前端bug 块属性标签float后,又有横行的margin情况下,在IE6显示margin比设置的大下一篇: Linux服务器进行性能优化中,通用流程是怎么样的?
您好,
2021-11-04 15:011)CPU 利用率:如果我们观察某段时间系统或应用进程的 CPU利用率一直很高(单个 core 超过80%),那么就值得我们警惕了。我们可以多次使用 jstack 命令 dump 应用线程栈查看热点代码,非 Java 应用可以直接使用 perf 进行 CPU 采采样,离线分析采样数据后得到 CPU 执行热点(Java 应用需要符号表进行堆栈信息映射,不能直接使用 perf得到结果)。
2)CPU 平均负载:平均负载高于 CPU 数量 70%,意味着系统存在瓶颈点,造成负载升高的原因有很多,在这里就不展开了。需要注意的是,通过监控系统监测平均负载的变化趋势,更容易定位问题,有时候大文件的加载等,也会导致平均负载瞬时升高。如果 1 分钟/5 分钟/15 分钟的三个值相差不大,那说明系统负载很平稳,则不用关注,如果这三个值逐渐降低,说明负载在渐渐升高,需要关注整体性能;
3)CPU 上下文切换:上下文切换这个指标,并没有经验值可推荐(几十到几万都有可能),这个指标值取决于系统本身的 CPU 性能,以及当前应用工作的情况。但是,如果系统或者应用的上下文切换次数出现数量级的增长,就有很大概率说明存在性能问题,如非自愿上下切换大幅度上升,说明有太多的线程在竞争 CPU。
上面这三个指标是密切相关的,如频繁的 CPU 上下文切换,可能会导致平均负载升高。根据这三者之间的关系进行应用调优。
CPU 上的的一些异动,通常也可以从线程上观测到,但需要注意的是,线程问题并不完全和 CPU 相关。与线程相关的指标,主要有下面几个(均都可以通过 JDK 自带的 jstack 工具直接或间接得到):
应用中的总的线程数;
应用中各个线程状态的分布;
线程锁的使用情况,如死锁、锁分布等;