当前位置:   首页国外主机资讯调度队列:高性能MySQL:选择磁盘队列调整策略

调度队列:高性能MySQL:选择磁盘队列调整策略

发布日期:2021-06-07 19:48 | 文章来源:简书

调度队列

  在GNU1Linux上,队列调度决定了到块设备的请求实际上发送到底层设备的顺序。默认情况下使用cfq (Completely Fair Queueing,完全公平排队)策略。随意使用的笔记本和台式机使用这个调度策略没有问题,并且有助于防止I/O饥饿,但是用于主机则是有问题的。在MySQL的工作负载类型下,cfq 会导致很差的响应时间,因为会在队列中延迟些不必要的请求。

  可以用下面的命令来查看系统所有支持的以及当前在用的调度策略:

  $ cat /sys/block/sda/queue/scheduler

  noop deadline [cfq]

  这里sda需要替换成想查看的磁盘的盘符。在我们的例子中,方括号表示正在使用的调度策略。cfq之外的两个选项都适合主机级的硬件,并且在大多数情况下,它们工作同样出色。noop调度适合那些自己在背后实现了调度算法的设备,如硬件RAID控制器和SAN。deadLine则对RAID控制器和直接使用的磁盘都工作良好。我们的基准测试显示,这两者之间的差异非常小。重要的是别用cfq,这可能会导致严重的性能问题。

  不过这个建议也需要有所保留的,因为磁盘调度策略实际上在不同的内核有很多不一样的地方,千万不能望文生义。

联系我们
关于使用场景和技术架构的更多咨询,请联系我们的销售和技术支持团队。
Yingsoo Host

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部