概率抽奖算法
/// <summary> /// 抽奖 /// </summary> /// <param name="probabilities">每个奖项的概率&
在物理磁盘上创建的内存交换分区,可用作内存。上网传言,SWAP分区大小一般为物理内存的2倍,8G封顶。理论上,需要8G以上的交换分区时,不要再使用SWAP,否则会严重影响磁盘IO。
创建交换分区文件
$ dd if=/dev/zero of=/swapfile bs=block_size count=number_of_block
注:block_size、number_of_block 大小可以自定义,比如 bs=1M count=1024 代表设置 1G 大小 SWAP 分区。如果bs=1,则为1字节大小。
设置交换分区文件
$ mkswap /swapfile
设置交换分区文件权限,如果没有设置,可能会在第4步提示文件不安全
$ chmod 600 /swapfile
立即启用交换分区文件
$ swapon /swapfile
注:如果在 /etc/rc.local 中有 swapoff -a 需要修改为 swapon -a
设置开机启动SWAP分区
$ echo 'swapfile swap swap defaults 0 0' >> /etc/fstab
修改 swpapiness 参数 在 Linux 系统中,可以通过查看 /proc/sys/vm/swappiness 内容的值来确定系统对 SWAP 分区的使用原则。当 swappiness 内容的值为 0 时,表示最大限度地使用物理内存,物理内存使用完毕后,才会使用 SWAP 分区。当 swappiness 内容的值为 100 时,表示积极地使用 SWAP 分区,并且把内存中的数据及时地置换到 SWAP 分区。
查看修改前为 0,需要在物理内存使用完毕后才会使用 SWAP 分区:
$ cat /proc/sys/vm/swappiness
修改当前值
$ echo 10 > /proc/sys/vm/swappiness
若需要永久修改此配置,在系统重启之后也生效的话,可以修改 /etc/sysctl.conf 文件,并增加以下内容:
# vim /etc/sysctl.conf
vm.swappiness=10
# sysctl -p
确认SWAP路径
$ free -m
关闭SWAP分区
$ swapoff /swapfile
取消 swappiness 参数值
$ echo 0 >/proc/sys/vm/swappiness
若需要永久修改此配置,在系统重启之后也生效的话,可以修改 /etc/sysctl.conf 文件,并增加以下内容:
# vim /etc/sysctl.conf
vm.swappiness=0
# sysctl -p
通过$ free -m
确认SWAP分区已经关闭