查看 swap 占用脚本
for i in $(cd /proc;ls | grep "^[0-9]" | awk $0>100); do awk /Swap:/{a=a+$2}END{print "$i",a/1024"M"} /proc/$i/smaps;done| sort -k2nr
为什么会有 swap 分区, swap 分区又是做什么的
其实 swap 分区的作用就是将一些应用程序中不经常处理不重要的任务临时安排到 swap 分区里面, 这样减少占用内存资源, 毕竟内存资源是有限的让内存先把紧急的经常处理的任务走完, 等资源空闲了, 在重新调出 swap 分区的任务处理如果内存空间与 swap 分区的空间都满了, 这时候就会导致内存溢出内存溢出一般抓下堆栈 jstack [pid] -l > jstack_file.txt , 获取堆栈文件, 进行分析原因
来源: http://www.bubuko.com/infodetail-2517777.html