常用问题排查内存占用

Linux常用问题排查命令

服务器技术 2020-06-18 15:57:26 32

导读

Linux运维常见问题内存占用大/内存不会释放日志文件太大/清空与删除日志文件进程太多/进程释放与优化服务配置与优化安全配置常用命令# 内存占用 ps -aux | sort -k4nr # 内存占用最大的10个进程 ps -aux | sort -k4nr&……

Linux运维常见问题

  • 内存占用大/内存不会释放

  • 日志文件太大/清空与删除日志文件

  • 进程太多/进程释放与优化

  • 服务配置与优化

  • 安全配置

常用命令

# 内存占用
ps -aux | sort -k4nr
# 内存占用最大的10个进程
ps -aux | sort -k4nr | head -n 10
# 进行kill掉
kill -9 $(ps aux | grep 进程名 |grep -v grep| awk '{print $2}')
# 查看内存占用最大的进程
ps aux| grep -v "USER" |sort -n -r -k 4 |awk 'NR==1{ print $0}'
# 内存占用情况
free -m
# 动态监视进程消耗内存等信息
top
# 内核态内存占用
slabtop
# 查看内存使用的动态变化
vmstat 1
# 其中vmstat N 代表每隔N秒更新一次数据。
# 查看当前php-fpm进程平均占用内存情况,一般来说一个php-fpm进程占用的内存为30-40MB,本次查询的结果是60MB,显然是多了。命令如下
ps --no-headers -o "rss,cmd" -C php-fpm | awk '{ sum+=$1 } END { printf ("%d%s\n", sum/NR/1024,"M") }'
# 查看当前php-fpm总进程数
ps -ylC php-fpm --sort:rss
# 查看当前php-fpm进程的内存占用情况及启动时间
ps -e -o 'pid,comm,args,pcpu,rsz,vsz,stime,user,uid'|grep www|sort -nrk5

清理内存

# 释放占用的缓存空间
sync     #先将内存刷出,避免数据丢失
echo 1 > /proc/sys/vm/drop_caches #释放pagecache
echo 2 > /proc/sys/vm/drop_caches #释放dentry和inode
echo 3 > /proc/sys/vm/drop_caches #释放pagecache、dentry和inode


1253067 TFnetwork_cn