为什么磁盘满可能导致cpu使用率飙升

先说原因

因为当文件在安装和卸载的时候,会使硬盘中的数据排列非常分散或者断断续续的,让电脑在查找时速度变慢,就造成大量的使用CPU资源。这时就需要更换CPU。
案例
事件描述
公司监控系统事件报警某个应用的磁盘满了。通过后端执行命令发现 CPU 占用 200%。此应用的配置信息为:2C8G 磁盘为:40G
如下图所示
为什么磁盘满可能导致cpu使用率飙升_第1张图片

通过图上的标红的几个指标可以看到:1)CPU 使用率很高 2)CPUload 都三位数了。 3)si 占用 10% 左右。
为什么磁盘满可能导致cpu使用率飙升_第2张图片
当然这个问题我比较清楚是磁盘的原因。
采取措施
删除大文件文件。
然而删除大文件后发现磁盘空间并未释放,是因为文件删除了但是对应的进程没杀掉,但是磁盘空间还未释放。也找不到大文件了。CPU 使用仍然超高。
然后用 jvm 自带的工具查看,进一步确认是文件的读写导致的 CPU 使用率高。

为什么磁盘满可能导致cpu使用率飙升_第3张图片
为什么磁盘满可能导致cpu使用率飙升_第4张图片
最后进行了杀掉进程才发现磁盘被释放,重启应用系统恢复正常。所以这个性能问题给我们一个提示:有时候你看到的性能表象不一定真正是问题的原因。CPU 很高不一定是 CPU 的核数不够,有可能是磁盘或者内存的问题导致的 CPU 飙升,所以要透过问题看本质,才能真正的解决性能问题。

你可能感兴趣的:(高并发,服务性能排查,linux,服务器)