根源:网海拾贝
我们有来由信托接纳新的内核版本(2.2.16-3 smp)也应该无机能的晋升:
OS2: Newer minor version kernel TPC Results
Load Time (Seconds) 9.40
Transactions / Second 11.522
目前曾经有 2.4 版本的内核,和 2.2 对比,机能上有了很年夜的晋升,我们接纳 2.4.1 smp:
OS3: Newer major version kernel TPC Results
Load Time (Seconds) 8.32
Transactions / Second 12.815
Linux 缺省读操作时更新末端一次读的时辰,可是这个对我们来说并不严厉,因此我们关闭这个选项,经由进程设置 noatime 的文件属性来完成。(关于 Windows NT 和 2000 有相似的设置)
要是只是相对 Oracle 的数据文件设置,我们的命令是
chattr A file_name
对整个目录的实行要领:chattr -R A directory_name
最好的要领是修正 /etc/fstab ,针对每个文件细碎进口,添加 noatime 关键字。
OS4: noatime file attribute
TPC Results
Load Time (Seconds) 5.58
Transactions / Second 13.884
此外一个调停 Linux I/O 的要领是虚拟内存子细碎的调停,修正 /ect/sysctl.cong 文件,增进下面一行:
vm.bdflush = 100 1200 128 512 15 5000 500 1884 2
依据 /usr/src/Linux/Documentation/sysctl/vm.txt 的说法:
第一个参数100 %:节制缓冲区中最年夜的脏缓冲数据,增进这个值意味着 Linux 可以迟误磁盘写。
第二个参数 1200 ndirty:给出 bdflush 一次可以写入磁盘的最年夜脏缓冲。
第三个参数 128 nrefill:当挪用 refill_freelist() 时,bdflush 添加到自在缓冲区中的最年夜缓冲数量。
refill_freelist() 512:当这个数量逾越 nref_dirt 脏缓冲时,将叫醒 bdflush。
第五个 15 和末端两个参数 1884 和 2,细碎未运用,我们不做修正。
age_buffer 50*HZ, age_super 参数 5*HZ:节制 Linux 把脏缓冲写到磁盘的最多守候时辰。数值用时钟滴答数(jiffies)透露显示,每秒为 100 个 jiffies 。
OS5: bdflush settings TPC Results
Load Time (Seconds) 4.43
Transactions / Second 14.988
颠末以上一系列调停后,我们得到的最终加载时辰增进了 1015.35%,TPS 增进了 45.61%。
版权声明:
原创作品,容许转载,转载时请务必以超链接情势标明文章 原始来由 、作者信息和本声明。否则将究查法律责任。