问题描述

最近发现服务器访问速度变慢,内存占得很满,操作经常卡顿,因为部署了不少的服务,有应用服务,也有数据库服务都很吃内存,但是查看还剩余2G左右内存,应该不至于卡顿,于是准备处理一下。

看了系统经常发现一个进程kswapd0 一阵一阵的占用超高的CPU资源。

查了一些资料说,系统物理内存不足时,kswapd0 会频繁的进行换页操作(使用swap分区与内存换页操作交换数据),而换页操作非常消耗 CPU 资源,所以导致该进程持续占用 CPU 资源过高。

在linux的内存分配机制中,优先使用物理内存,当物理内存有空闲时,不会释放其占用内存,就算占用内存的程序已经被关闭了,该程序所占用的内存用来做缓存使用,对于开启过的程序、或是读取刚存取过得数据会比较快。

问题分析

可以通过调整vm.swappiness 内核参数来控制交换空间的大小。

设置vm.swappiness=0 ,告诉内核尽量少用到swap分区,但不代表禁用swap分区;

设置vm.swappiness=100的话,则表示尽量使用swap分区。

解决方案

临时调整swappiness

$  sysctl vm.swappiness=0
$  cat /proc/sys/vm/swappiness

永久调整swappiness

$ vi /etc/sysctl.conf
#最后一行加上
vm.swappiness=0

重新加载参数

$ sysctl -p

Linux的进程kswapd0占用CPU过高导致卡顿问题相关推荐

  1. 打开Vscode提示rg.exe占用cpu过高,电脑卡顿

    Vscode更新之后rg.exe占用cpu过高 文件->首选项->搜索"search.followSymlinks"改为false 图片:

  2. kswapd0占用CPU过高问题处理

    项目场景: kswapd0占用CPU过高,严重影响服务器及虚拟机的使用. 问题描述 最近同事反应工作站上的虚拟机太慢了.到虚拟机上看了一下,资料占得很满,一点很长时间没反应,卡得不行,但虚拟机上只部署 ...

  3. window 查找 java 进程中占用cpu比较高的线程

    概述 公司内部的一个产品 (java 开发的) 运行在 window 虚拟机上,运行一段时间后CPU飙升,然后想查看是哪个线程占用. 折腾了一下午,终于定位到该线程. 下面我们通过两种方式定位到占用c ...

  4. 【电脑卡慢】win10 TiWorker.exe进程持续占用CPU过高

    . TiWorker.exe是什么? TiWorker.exe是windows操作系统的一个组件,主要用于安装新模块或系统更新,全程Windows Modules Installer Worker. ...

  5. linux中Select 函数占用cpu过高问题

    这几天用select函数发现用select函数占用的cpu过高,虽然我已经设置了阻塞时间. 这是因为select函数是会修改时间变量timeval结构体的值,这个结构体的值设置成0,每次select结 ...

  6. Unity-- Gfx.WaitForPresentOnGfxThread占用CPU过高导致帧率低

    一个新建的URP项目,里面只有几个测试模型,结果在3070的笔记本电脑上,只能运行到20帧!FPS=20! 这实在受不了,开始Profiler分析原因.发现Gfx.WaitForPresentOnGf ...

  7. vs code1.61.1 任务管理器里出现2个rg进程占用cpu很高电脑运行卡

    环景: win10专业版 vs code v.1.61.1 问题描述: 任务管理器里出现2个rg进程占用cpu很高,电脑卡 解决方案: vs code软件里打开文件->首选项->设置搜se ...

  8. linux下查找java进程占用CPU过高原因

    linux下查找java进程占用CPU过高原因 1. 查找进程 top查看进程占用资源情况 明显看出java的两个进程22714,12406占用过高cpu. 2.查找线程 使用top -H -p &l ...

  9. linux php cpu,查找linux下进程占用CPU过高的原因,以php-fpm为例

    很多时候,线上服务器的进程在某时间段内长时间占用CPU过高,为了优化,我们需要找出原因. 1.找出占用CPU最高的10个进程 ps aux | sort -k3nr | head -n 10 或查看占 ...

最新文章

  1. 【转载】COM 组件设计与应用(四)——简单调用组件
  2. 没想到咱也算得上是先富起来的那一拨
  3. 一分钟明确 VS manifest 原理
  4. Redis 持久化方式
  5. 美国计算机协会ACM子刊中国特辑:中国的人工智能初创企业
  6. 95-34-030-Context-DefaultChannelHandlerContext
  7. Java开源项目Hibernate包作用详解
  8. Unity3D基础31:脚本生命周期
  9. JavaScript 中的异步:Event Loop 及其他
  10. Linux Vsftpd 连接超时解决方法(被动模式)
  11. Effective Objective-C 的读书笔记
  12. python中索引越界的常见原因
  13. 生活中很多“被我们忽视的东西”存在价值
  14. 硬盘分区大学计算机,电脑硬盘容量要怎么选?又要怎么硬盘合理分区?今天我再说一次!...
  15. Office2013办公软件简体中文专业增强版
  16. algodoo是什么意思_ooc表示的是什么意思什么梗 网络用语OOC含义
  17. python getch_macOS 下的 getch()
  18. sitemap-php生成网站地图
  19. 第五章 图像基础(设备内容)
  20. 电脑赚钱兼职平台有哪些?分享几个正规靠谱的平台

热门文章

  1. 求助编译lede的openwrt固件是云编译出错
  2. BZOJ 3669 【NOI 2014】 魔法森林
  3. php读取图片文件流,详解php文件包含原理(读取文件源码、图片马、各种协议、远程getshell等)...
  4. A*算法详解(个人认为最透彻的一个)
  5. 手机按上sim卡显示无服务器,无服务是卡的?和手机卡顿并无关联
  6. 【进击的CMMI】组织过程资产与持续改进
  7. Python中isinstance用法
  8. 鸿蒙系统体验手机机,香香的鸿蒙系统体验机:荣耀9X
  9. 测试开发工程师成长日记010 - Jenkins中的CI/CD/CT(持续集成构建/持续交付/持续测试)
  10. 安装docker desktop失败解决办法