📢 最新动态(2025年7月)
Linux内核6.10版本近日正式发布,新增了更精细的内存压力追踪功能,可实时识别应用内存争用情况!这对服务器性能调优简直是福音~
内存就像系统的"工作台"🗄️——不够用时程序会卡顿,用太多又可能触发OOM(内存杀手)😱,掌握这些方法,你的Linux设备能跑得更丝滑!
free -h
:一眼看懂内存状态$ free -h total used free shared buff/cache available Mem: 16G 5.2G 800M 1.1G 10G 9G Swap: 2G 0B 2G
available
接近0?小心性能悬崖! top
/htop
:实时动态追踪按M
键按内存排序进程,揪出"内存大胃王"🍔:
vmstat 2
:每秒快照诊断关键指标:
smem -s swap
显示进程实际占用的物理内存+Swap,比top
更真实:
$ smem -s swap -r | head -5 PID User Command Swap USS PSS RSS 1234 mysql /usr/sbin/mysqld 1.2G 800M 1.0G 1.5G
pmap -x <PID>
透视单个进程的内存地图🗺️,连共享库占用都看得清清楚楚!
/proc/meminfo
宝藏文件$ grep -E 'MemTotal|MemFree|SwapCached|Slab' /proc/meminfo MemTotal: 16384000 kB Slab: 284736 kB # 内核对象缓存
排查步骤:
valgrind --leak-check=yes ./your_program
🧪(开发环境) sar -r 1
记录历史趋势📈 dmesg | grep oom
查杀进程记录 # 临时生效(推荐值10-30) echo 10 > /proc/sys/vm/swappiness # 永久生效 echo "vm.swappiness=10" >> /etc/sysctl.conf
sync; echo 3 > /proc/sys/vm/drop_caches # 释放页缓存/目录项/inode
用cgroups
给贪吃进程设上限:
cgcreate -g memory:/my_group echo 2G > /sys/fs/cgroup/memory/my_group/memory.limit_in_bytes
free -h
加入cron任务 /var/log/syslog
的OOM告警 内存就像💰——不是越多越好,关键看怎么用!掌握这些工具,你的Linux服务器能跑出法拉利的感觉🏎️💨
ℹ️ 本文方法适用于大多数Linux发行版(Ubuntu/CentOS等),数据参考2025年7月内核文档及实际测试。
本文由 壬木 于2025-07-29发表在【云服务器提供商】,文中图片由(壬木)上传,本平台仅提供信息存储服务;作者观点、意见不代表本站立场,如有侵权,请联系我们删除;若有图片侵权,请您准备原始证明材料和公证书后联系我方删除!
本文链接:https://vps.7tqx.com/wenda/479032.html
发表评论