Chinaunix首页 | 论坛 | 博客
  • 博客访问: 298112
  • 博文数量: 46
  • 博客积分: 528
  • 博客等级: 中士
  • 技术积分: 486
  • 用 户 组: 普通用户
  • 注册时间: 2012-05-20 15:36
文章分类

全部博文(46)

文章存档

2017年(1)

2015年(8)

2014年(2)

2013年(19)

2012年(16)

分类: 服务器与存储

2013-01-05 16:19:54

查看系统当前IO调度算法:


[root@IO-0-1 ~]# cat /sys/block/sda/queue/scheduler

noop anticipatory deadline [cfq] ----括号中为当前使用的算法



修改IO调度算法:


[root@IO-0-1 ~]# echo deadline > /sys/block/sda/queue/scheduler

[root@IO-0-1 ~]# cat /sys/block/sda/queue/scheduler

noop anticipatory [deadline] cfq 可以看到IO调度算法已经修改为deadline

 针对MYSQL数据库服务器的IO调度算法优化设置:

1.CFQ使用于IO大小非常均匀的场景

2.比较复杂的OLTP环境最好使用DeadLine算法

3.IO性能不是瓶颈的时候可以使用Noop算法

4.Anticipatory适合大数据顺序顺序存储的文件服务器,如ftp server和web server,不适合数据库环境,DB服务器不要使用这种算法。

5.新兴的固态硬盘比如SSD、Fusion IO上,最简单的NOOP反而可能是最好的算法,因为其他三个算法的优化是基于缩短寻道时间的,而固态硬盘没有所谓的寻道时间且IO响应时间非常短。

deadline可调的参数
如:[root@IO-0-1 ~]# cat /sys/block/sdh/queue/iosched/read_expire
    500
遗憾的是这些值得大小具体该多少没有固定的答案。。。
阅读(6159) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~