磁盘的优化

调度算法

  写入优化 

    优化方式

    1、调整算法

    2、调整队列

      调整算法: vim /usr/lib/tuned/《已经选择的优化策略》/tuned.conf

      查看算法: cat /sys/nlock/sda/queue/scheduler

      配置文件位于/sys/block/sda(需要优化的磁盘)/queue/

    在 noob算法下

      无任何优化(多用在存储已经优化的情况下)

    在deadline的算法模式下

      read_expire读过期为最大读取时间(默认为500ms)

      write_expire写过期为最大写入时间(默认为5000ms)

    在anticipatory(猜想)算法下

         其中antic_expore的等待时间下(默认6ms),会判断下一个IO是否位于附近,如果相近则继续处理

    在cfq算法下

       针对每个io进行单独的算法。

      使用ionice命令优化特定进程在磁盘上的优先级

        -p 进程ID

        -n 优先级

        -c 类

            class1 (real-time) 同优先级谁先访问磁盘随先读取 优先级同类最高

                   优先级0-7(0最重要)

             class2 (best-effort)同优先级依次轮询使用固定时间的时间片,同类优先级高者可使用时间片越长

               优先级0-7(0最高)

          class3 空闲时才处理

    测试: 使用mailload.py 模拟大量邮件 小IO测试

    mailload

        -d 指定文件生成位置

     example mailload。py -d /mnt/xfs/mailload -t -n500

  扩展: xfs和ext4性能的区别,xfs适合大文件处理,ext4适合处理小文件(一个IO小于64K算小IO)

      IO检测工具 iometer 可以监控平均速率,平均IO大小等等

原文地址:https://www.cnblogs.com/ggykx/p/11333864.html