- 论坛徽章:
- 0
|
其实一般来说,我们在安装过程中都没有考虑过设置多个swap分区的情况。除了swap需要的容量超过2G的限制,需要设置多个swap分区外,其实可以通过在多个磁盘上的创建swap区来提高性能。
如果你是用RAID 0,RAID会自动把创建的swap区并行的spread到每块磁盘。跟单块硬盘上的swap分区相比,这样会显著提高磁盘写的性能。
但不是每个人都会使用RAID 0,在多磁盘的情况下,我们可以使用另外一种方式来提高性能达到和RAID0差不多的效果。
这种方式的实现方法很简单,关键就是/etc/fstab这个文件。(这种方式对多个SCSI硬盘
和/或
控制器的性能提升明显,对同一个控制器上的两块IDE硬盘作用不是很大,对多个控制器上的多块IDE硬盘或许有作用)
这个文件主要是记录了包括swap区在内的linux分区信息,在kernel boot之后被读入。fstab是重要的关键文件,修改前最好cp一份,用vi修改的时候一定要注意。
如果你在多个SCSI硬盘上创建了swap分区,那么你的fstab的内容应该像下面这样:
QUOTE:
| /dev/sda2 none swap sw 0 0
/dev/sdb2 none swap sw 0 0
/dev/sdc2 none swap sw 0 0
/dev/sdd2 none swap sw 0 0
|
在这种普通的情况下,Linux会先使用/dev/sda2,当这个swap区满了,再使用/dev/sdb2,以此类推顺序使用swap分区。
我们可以做如下更改设置:
QUOTE:
| /dev/sda2 none swap sw,pri=3 0 0
/dev/sdb2 none swap sw,pri=3 0 0
/dev/sdc2 none swap sw,pri=3 0 0
/dev/sdd2 none swap sw,pri=1 0 0
|
我们把前三个分区设置为相同的优先级(priority),比第四个分区高一些。(swap分区从高优先级到低优先级依次使用,最高32767,最低优
先级是0。这个跟DNS里面的MX记录的优先级设定是相反的)。这样使得Linux并行的使用三个优先级相同的swap分区,这会大幅的提高对swap的
读写。当这三个分区满了,就会使用第四块swap分区。
另外,除了并行的使用swap分区外,还可以使用priority把性能最好,速度最快的磁盘上的swap设置为最高的优先级。在速度慢一些的老磁盘上创建低优先级的备用的swap分区。
建议楼主划分4G SWAPSPACE就可以了。 |
|