hadoop SWAP交换空间

swap的概念

1、当内存不够用时,将存储器中的数据块从DRAM移到swap的磁盘空间中,以释放更多的空间给当前进程使用.

2、当再次需要那些数据时,就可以将swap磁盘中的数据重新移到内存,而将那些不用的数据块从内存移到swap中.

3、数据从内存移动交换区的行为被称为页面调用,发生在后台的页面调用没有来自应用程序的干涉.
4、swap空间是分页的,每一页的大小和内存页的大小一样.
5、并不是一定要给每个系统划分SWAP,比如大多数的嵌入式就没有swap.
##在执行以上操作以后,查看你的swap分区还是满了,你首先查看一下你实际的内存剩多少空间,然后在查看自己的swap空间用了多少,首先提前保证实际剩余的内存比你的swap的内存的空间要大,然后执行一下操作,否则会宕机的!

swap的作用
从理论上讲,swap分区确实是增大了可使用的内存空间,但是,内存中数据交换速度非常快,而swap分区讲物理内存当作内存的载体,物理磁盘的数据交换速度远远落后于物理内存,因此不可避免的带来运行效率的下降。

swap的查看方式
通过 free方式

大数据集群中建议少用swap 的方式 会很大的影响集群性能

swapoff -a 释放交换分区。

推荐:
1、在其固定的路径下 vi /proc/sys/vm/swappiness ()
修改 一个较小的值 一般推荐 小于 5的数
否则集群状态总会报
正在交换 存在隐患 的异常这也是集群中某个节点内存使用过多导致的

2、如果是SSD,建议关闭交换空间

注:查看linux中占用 cpu和内存的 top N 进程
可以使用一下命令查使用内存最多的5个进程
ps -aux | sort -k4nr | head -5

可以使用一下命令查使用CPU最多的5个进程
ps -aux | sort -k3nr | head 5

注:如果内存够大,应当告诉 linux 不必太多的使用 SWAP 分区, 可以通过修改 swappiness 的数值。swappiness=0的时候表示最大限度使用物理内存,然后才是 swap空间,swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。

猜你喜欢

转载自blog.csdn.net/weixin_40809627/article/details/86063676