文章目录
- 自己服务器最近经常性崩溃下线,自己发现nginx对CPU、php对RAM的要求挺高的,当然这是我对服务器进行压力测试得出来的结果;不然还是一如以往网站下线而一脸懵逼。后来发现自己虽然有swap但一直没使用,都搞的我以为阿里云搞了什么手脚!后来发现是默认关了,但可以开启。 网站压力测试
- 阿里云提供的云服务器(Elastic Compute Service,简称 ECS),是云主机的一种,当前采用的虚拟化驱动是Xen(这一点可以通过bios vendor和virtual type可以看出)。 默认情况下,阿里云云主机的swap功能是没有启用的,原因当然是通过取消swap功能可以降低磁盘IO的占用率来让用户购买更多的内存、提高磁盘寿命和性能。 阿里当前的做法是: 1.不创建swap分区,由镜像决定 2.将vm.swappiness设定为0,即永不使用swap分区 启用swap分区,确实可以降低内存的使用压力,但并不是长久之计,如果云主机上运行的应用确实需要较高的内存,建议还是购买更多的内存。
-
- 1.查看当前系统中是否已经启用swap分区 cat /proc/swaps top 2.如果没有启用swap分区功能,则新建一个专门的文件用于swap分区 dd if=/dev/zero of=/data/swap bs=512 count=8388616 注:此文件的大小是count的大小乘以bs大小,上面命令的大小是4294971392,即4GB 3.通过mkswap命令将上面新建出的文件做成swap分区 mkswap /data/swap 4.查看内核参数vm.swappiness中的数值是否为0,如果为0则根据实际需要调整成30或者60,最大为100,值越大则更积极使用swap; cat /proc/sys/vm/swappiness sysctl -a | grep swappiness sysctl -w vm.swappiness=60 注:若想永久修改,则编辑/etc/sysctl.conf文件 vi /etc/sysctl.conf 5.启用此交换分区的交换功能 swapon /data/swap echo "/data/swap swap swap defaults 0 0" >> /etc/fstab
- swapoff /data/swap swapoff -a >/dev/null
- 阿里云云主机添加swap分区与swap性能优化
自己服务器最近经常性崩溃下线,自己发现nginx对CPU、php对RAM的要求挺高的,当然这是我对服务器进行压力测试得出来的结果;不然还是一如以往网站下线而一脸懵逼。后来发现自己虽然有swap但一直没使用,都搞的我以为阿里云搞了什么手脚!后来发现是默认关了,但可以开启。
自己服务器最近经常性崩溃下线,自己发现nginx对CPU、php对RAM的要求挺高的,当然这是我对服务器进行压力测试得出来的结果;不然还是一如以往网站下线而一脸懵逼。后来发现自己虽然有swap但一直没使用,都搞的我以为阿里云搞了什么手脚!后来发现是默认关了,但可以开启。
阿里云提供的云服务器(Elastic Compute Service,简称 ECS),是云主机的一种,当前采用的虚拟化驱动是Xen(这一点可以通过bios vendor和virtual type可以看出)。
默认情况下,阿里云云主机的swap功能是没有启用的,原因当然是通过取消swap功能可以降低磁盘IO的占用率来让用户购买更多的内存、提高磁盘寿命和性能。
阿里当前的做法是:
-
1.不创建swap分区,由镜像决定
-
2.将vm.swappiness设定为0,即永不使用swap分区
启用swap分区,确实可以降低内存的使用压力,但并不是长久之计,如果云主机上运行的应用确实需要较高的内存,建议还是购买更多的内存。
-
1.查看当前系统中是否已经启用swap分区
cat /proc/swaps
top
-
2.如果没有启用swap分区功能,则新建一个专门的文件用于swap分区
dd if=/dev/zero of=/data/swap bs=512 count=8388616
注:此文件的大小是count的大小乘以bs大小,上面命令的大小是4294971392,即4GB
-
3.通过mkswap命令将上面新建出的文件做成swap分区
mkswap /data/swap
-
4.查看内核参数vm.swappiness中的数值是否为0,如果为0则根据实际需要调整成30或者60,最大为100,值越大则更积极使用swap;
cat /proc/sys/vm/swappiness sysctl -a | grep swappiness
sysctl -w vm.swappiness=60
注:若想永久修改,则编辑/etc/sysctl.conf文件
vi /etc/sysctl.conf
-
5.启用此交换分区的交换功能
swapon /data/swap
echo "/data/swap swap swap defaults 0 0" >> /etc/fstab
1.查看当前系统中是否已经启用swap分区
cat /proc/swaps
top
2.如果没有启用swap分区功能,则新建一个专门的文件用于swap分区
dd if=/dev/zero of=/data/swap bs=512 count=8388616
注:此文件的大小是count的大小乘以bs大小,上面命令的大小是4294971392,即4GB
3.通过mkswap命令将上面新建出的文件做成swap分区
mkswap /data/swap
4.查看内核参数vm.swappiness中的数值是否为0,如果为0则根据实际需要调整成30或者60,最大为100,值越大则更积极使用swap;
cat /proc/sys/vm/swappiness sysctl -a | grep swappiness
sysctl -w vm.swappiness=60
注:若想永久修改,则编辑/etc/sysctl.conf文件
vi /etc/sysctl.conf
5.启用此交换分区的交换功能
swapon /data/swap
echo "/data/swap swap swap defaults 0 0" >> /etc/fstab
swapoff /data/swap
swapoff -a >/dev/null
swapoff /data/swap
swapoff -a >/dev/null
