Sequoiadb分布式数据库调整内核参数

来源:互联网 发布:淘宝刹那数码2店怎么样 编辑:程序博客网 时间:2024/05/01 21:14
为了提高Sequoiadb的性能,需要进行内核参数的调整,操作需要root权限下才行。
先进行备份,vm文件没有写权限可在其他目录进行备份,编写一个小脚本进行备份:
vi saveProc.sh#!/bin/sh               cat /proc/sys/vm/swappiness>vm_swappiness.bakcat /proc/sys/vm/dirty_ratio>vm_dirty_ration.bakcat /proc/sys/vm/dirty_background_ratio>vm_dirty_background_ratio.bakcat /proc/sys/vm/dirty_expire_centisecs>vm_dirty_expire_centisecs.bakcat /proc/sys/vm/vfs_cache_pressure>vm_vfs_cache_pressure.bakcat /proc/sys/vm/min_free_kbytes>vm_min_free_kbytes.bakcat /proc/sys/vm/overcommit_memory>vm_overcommit_memory.bakcat /proc/sys/vm/overcommit_ratio>vm_overcommit_ratio.bakecho "over"
vi /etc/sysctl.conf 进去之后进行内核参数调整:
vm.swappiness = 0vm.dirty_ratio = 100vm.dirty_background_ratio = 40vm.dirty_expire_centisecs = 3000vm.vfs_cache_pressure = 200vm.min_free_kbytes = <物理内存大小的8%,单位KB>vm.overcommit_memory = 2vm.overcommit_ratio = 85
其中,vm.min_free_kbytes =<物理内存大小的8%,单位KB>的详细参数可通过命令free –k查看total mem 的值,在乘于8%,得出具体值。各个参数的含义:
Vm.wappiness=0表示系统进行交换行为的程度,数值越高表示越容易发生磁盘交换,0表示当内存剩余未0时才开始启动swap将磁盘一部分用作内存。
Vm.dirty_ration =100表示内存中的脏页(文件系统写缓冲区)占用内存百分百的时候才将内存中的脏页写入磁盘中,数字表示占用率。
Vm.dirty_background_ration =40参数控制文件系统的pdflush进程,表示内存中的脏页占用内存百分之40时开始使用pdflush将脏页写入磁盘。
Vm.dirty_expire_centisecs=3000其中3000表示是30秒,表示内核写缓冲区的数据30秒前的数据就算旧数据(脏页),将会刷入磁盘。
Vfs.cache_pressure=200该文件表示内核回收用于directoryinode cache内存的倾向,该值超过100,将导致内核倾向于回收directoryinode  cache
Vm.min_free_kbytes为最低保留多少空闲内存。
Overcommit_memory =2表示内核可以分配超过所有物理内存和交换空间总和的内存。
Vm.overcommit_ration = 85可以挂载内存的百分比,可通过公式来计算系统整体可用内存,系统可分配内存=交换空间+物理内存*overcommit_ratio/100
执行如下命令,使配置生效:
/sbin/sysctl -p  




原创粉丝点击