网站首页 > 资源文章 正文
一、什么是swap交换分区?
定义:Swap space交换空间,是虚拟内存的表现形式。系统为了应付一些需要大量内存的应用,而将磁盘上的空间做内存使用,当物理内存不够用时,将其中一些暂时不需要的数据交换到交换空间,也叫交换文件或页面文件中。
理解:我们知道Linux内核为了提高读写效率与速度,会将文件在内存中进行缓存,这部分内存就是Cache Memory(缓存内存),常用的就是buffer cache和page cache。即使你的程序运行结束后,Cache Memory也不会自动释放。
这就会导致你在Linux系统中程序频繁读写文件后,你会发现可用物理内存变少。当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行Swap交换。
二、swap文件创建规则
参照oracle官方文档设定的标准应这样配置:
4G以内的物理内存,SWAP 设置为内存的2倍。
4-8G的物理内存,SWAP 等于内存大小。
8-64G 的物理内存,SWAP 设置为8G。
64-256G物理内存,SWAP 设置为16G。
三、创建swap文件
1、安装操作系统分区时需创建swap分区。
2、安装操作系统时没有创建swap分区,需手动创建。
(1)查看内存情况
如果swap行为0,需要创建swap空间。
(2)创建swap分区
dd if=/dev/zero of=/tmp/swapfile bs=1024 count=8192000
- if=/dev/zero:输入/dev/zero文件。/dev/zero主要的用处是用来创建一个指定长度用于初始化的空文件,就像临时交换文件。
- of=/tmp/swapfile:输出至/tmp/swapfile文件
- bs=1024:定义块大小为1024bytes,默认单位为bytes。
- count=8192000:总数大小8192000个bs即8192000kb,换算后得8G。
(3) 指定分区类型为swap
mkswap /tmp/swapfile
(4)设置swap分区有效
swapon /tmp/swapfile
(5)设置扩展的swap分区为自动挂载
Vim /etc/fstab
添加自动挂载分区命令
/tmp/swapfile swap swap defaults 0 0
(6)测试添加情况
Free -m
四、扩展swap文件
程序运行时频频因为内存过小问题自动自杀,可手动扩展swap大小。扩展方式:1、先将swap关闭。Swapoff -a
2、安装三个步骤重新分配swap文件,重新加载swap分区。
五、swappiness参数
Swappiness是关于swap使用率的参数,swappiness的值越大,表示越积极使用swap分区,越小表示越积极使用物理内存。默认值swappiness=60。
当swap使用率配置过大影响到了磁盘使用,可以将此值适当减小直至配置为0。当磁盘空间io空闲较大,物理内存负载较高时可以将此值逐渐增大直至100。
1、临时调整Swappiness参数
sudo sysctl vm.swappiness = 100
cat /proc/sys/vm/swappiness
2、永久调整Swappiness参数
sudo vim /etc/sysctl.conf
修改
vm.swappiness=10
然后执行命令:
sudo sysctl -p
猜你喜欢
- 2024-10-28 DEX混战,OneSwap能否乘风破浪?|链茶访
- 2024-10-28 如何在Linux系统中增加swap空间(linux 增加swap)
- 2024-10-28 C++11新特性(25)-更快的swap(c++是最快的语言吗)
- 2024-10-28 关于Linux系统安装中Swap分区的解释
- 2024-10-28 二十、为什么系统的Swap变高了?(swap调整)
- 2024-10-28 磁盘IO与swap分区:为何用到swap分区会导致服务器变慢
- 2024-10-28 疯狂的泡沫!一款名为“鱿鱼币”的数字货币,一天翻了24倍
- 2024-10-28 Linux下内存管理机制SWAP分区详解
- 2024-10-28 还不会用Linux做swap分区?这样子做,非常简单顺利
- 2024-10-28 关于ORACLE数据库服务器SWAP该设置成多大的建议值
你 发表评论:
欢迎- 最近发表
- 标签列表
-
- 电脑显示器花屏 (79)
- 403 forbidden (65)
- linux怎么查看系统版本 (54)
- 补码运算 (63)
- 缓存服务器 (61)
- 定时重启 (59)
- plsql developer (73)
- 对话框打开时命令无法执行 (61)
- excel数据透视表 (72)
- oracle认证 (56)
- 网页不能复制 (84)
- photoshop外挂滤镜 (58)
- 网页无法复制粘贴 (55)
- vmware workstation 7 1 3 (78)
- jdk 64位下载 (65)
- phpstudy 2013 (66)
- 卡通形象生成 (55)
- psd模板免费下载 (67)
- shift (58)
- localhost打不开 (58)
- 检测代理服务器设置 (55)
- frequency (66)
- indesign教程 (55)
- 运行命令大全 (61)
- ping exe (64)
本文暂时没有评论,来添加一个吧(●'◡'●)