服务器cpu 单核过高的影响,一次单核CPU占用过高问题的处理
案例
客户现场反馈,top的检查结果中,一个CPU的占用一直是100%。实际上现场有4个CPU,而且这个服务器是mysql专属服务器。
我的第一反应是io_thread一类的参数设置有问题,检查以后发现read和write的thread设置都是4,这和CPU数一致,因此可以断定这并不是单颗CPU占用过高的根本原因。
接下来需要确认MySQL究竟有没有利用到多核CPU,这个时候需要的工具叫做pidstat,命令如下:
pidstat -u -t -p 18158
得到的结果如下图所示:
图片.png
可以看出其实mysqld是可以利用到多核CPU的,那么此时可以得到一个推断:
某个CPU上做的事情太占资源了
**
一般这种最占资源的工作一定会在INNODB_TRX里留下一些端倪,因此检查一下:
图片.png
反复的检查,发现mysql在不停的执行这个SQL,只是where条件里的值发生了变化,至此我可以推断出业务应该是写了一个循环来遍历一个list,然后对每个item都执行update操作。
检查这个表并没有索引,给where条件中的列加上索引,再次检查CPU的占用,发现现在的占用已经降低到了16%左右,虽然还是很高,但是已经实际上解决了该问题。
小结
这次首先查io_thread是我的失误,因为这个参数如果没有设置也就是默认情况下也不会把MySQL变成单核的服务。
BTW,DBA是一个综合技能,除了会MySQL,Oracle之外,还得掌握很多Linux的知识,达到一个中级SA的标准。也不是会写SQL就能当DBA的。
服务器cpu 单核过高的影响,一次单核CPU占用过高问题的处理相关推荐
- java内存过高_Java应用问题定位系列——内存占用过高
定位Java程序内存使用过高或者内存泄漏的问题跟CPU也类似,一般可以分为以下3个步骤: 定位进程 定位线程 定位具体方法(代码部分) 一.定位进程 通过top -c(然后按Shift+M按内存排序) ...
- Java 线上cpu占用过高分析
转载于:https://blog.csdn.net/ch999999999999999999/article/details/113151519 感谢作者:ch999999999999999999 J ...
- 如何占用计算机内存,电脑内存占用太高怎么办 教你电脑内存不够用解决方法...
现在很多白领买电脑,都会优先考虑电脑的续航和便捷,因为他们买电脑主要也就办办公,看看电影,又不玩大型游戏,所以高性能对他们来说也没什么必要. 笔记本电脑 但现在市面上续航久,便携性比较高的Intel电 ...
- 一次单核CPU占用过高问题的处理
客户现场反馈,top的检查结果中,一个CPU的占用一直是100%.实际上现场有4个CPU,而且这个服务器是mysql专属服务器. 我的第一反应是io_thread一类的参数设置有问题,检查以后发现re ...
- svchost占用内存过高_是什么导致你的Java服务器内存和CPU占用过高呢
一.内存占用过高 1.造成服务器内存占用过高只有两种情况:内存溢出或内存泄漏 (1)内存溢出:程序分配的内存超出物理内存的大小,导致无法继续分配物理内存,出现OOM报错. (2)内存泄漏:不再调用的对 ...
- idea占用cpu过高_生产环境服务器变慢、CPU占用过高,诊断思路和性能评估谈谈?...
上篇: https://zhuanlan.zhihu.com/p/166162037zhuanlan.zhihu.com 一.生产环境服务器变慢,诊断思路和性能评估 1.在Linxu准备数据 (1) ...
- mysql是单核吗_一次单核CPU占用过高问题的处理
客户现场反馈,top的检查结果中,一个cpu的占用一直是100%.实际上现场有4个cpu,而且这个服务器是mysql专属服务器. 我的第一反应是io_thread一类的参数设置有问题,检查以后发现re ...
- Linux中JAVA服务器CPU占用过高(分析解决方法)
当发现生产环境CPU使用非常高,并且居高不下,导致服务器报警,需要快速定位,分析是什么地方占用CPU过高,推荐步骤如下: 1. 首先服务器查看占用cpu高的进程是哪一个,查出进程号 top 2.查询该 ...
- java 内存很高_Java服务器内存和CPU占用过高的原因
一.内存占用过高 1.造成服务器内存占用过高只有两种情况:内存溢出或内存泄漏 (1)内存溢出:程序分配的内存超出物理内存的大小,导致无法继续分配物理内存,出现OOM报错. (2)内存泄漏:不再调用的对 ...
最新文章
- 一封会笑死人的校园情书
- C++实现CString和string的互相转换
- 高性能的序列化与反序列化:kryo的简单使用
- 【推荐】一款快速预览神器:QuickLook
- ArcGis融合小多边形到相邻多边形
- Spring-SpringMVC父子容器
- 使用JDBCTemplate实现与Spring结合,方法公用 ——Spring配置(applicationContext.xml)
- 老牌语言依然强势,GO、Kotlin 等新语言为何不能破局?
- SSD1306驱动理解
- 怎样用计算机二元一次方程,键入公式在计算机如何键入二元一次方程式公式 – 手机爱问...
- stylus 设置全局样式_vue 公共样式处理_全局styl文件
- 鸡兔同笼php语言,鸡兔同笼(C语言代码)
- uniapp 动画的实现
- django-filer中文汉化无效的解决方案
- 写开源项目到底究竟有多赚钱?
- ES6-ES11-第一部分-let、const、解构赋值、模板字符串、简化对象写法、箭头函数、函数参数默认值、rest 参数、扩展运算符、Symbol、迭代器、生成器、Promise、Set、Map
- 7段均衡器最佳参数_均衡器参数详解(精)
- 国信证券学习系列(2)
- Kafka的命令行操作
- VS2019 MFC 对话框拆分窗格
热门文章
- 下载学习通上没有下载权限的文件
- 反斜杠,让您的csv文档字符不撞车;让“借”您csv数据的人叫苦不迭。
- Prometheus告警实践
- 客户需求分析方法:KJ分析法(亲和图法)
- C.实验7_3_奇数偶数
- 教你检查Mac电池的健康度
- 欧拉函数φ(x)相关性质及计算
- cdr存成html格式的文件格式,CDR必备!CDR保存与各种格式之间转换!-cdr文件用什么打开...
- html ico格式怎么用,ico是什么文件格式?ico文件怎么打开?
- val( )函数的用法