技术头条 - 一个快速在微博传播文章的方式     搜索本站
您现在的位置首页 --> Linux --> NFS随机IOPS性能不高的分析

NFS随机IOPS性能不高的分析

浏览:2971次  出处信息

    最近做FS3,一直对nfs的随机IOPS性能不高所困扰,所以细细分析了nfs的运行机制:

    NFS做数据传输是通过RPC调用来完成了。RPC调用的特点为,发起调用的进程会等待服务器端完成调用,在服务器端完成调用之前,

    发起调用的进程是会一直被阻塞的。

    同时对于NFS来说,一个nfs client端到一个nfs Server端只会建立一个连接。nfs服务请求的处理过程是,只有上一个请求处理完成后,

    才能处理下一个请求。所以处理过程是串行的,而不是并发的,这就导致了NFS处理随机IO能力不高。例如:

    目前SAS硬盘的随机读写的寻道时间大约为4-5ms,所以当把这样的多块硬盘做成一个raid0,单个IO的响应时间也不会低于4ms,

    由于NFS处理是串行的,所以这时读IOPS最多只能达到1000ms/4ms每个=250 IOPS。对于本地的raid磁盘组,虽然单个IO的响应时间为4ms,但由于是可以并发处理的,

    也就是说,多个IO是同时发到各个硬盘上去的,这样总体的IOPS会很高,而对于NFS时,由于NFS处理是串行的,所以其IOPS不会因raid而更高。

    另,由于很多NFS Server对于写操作,不必等真正写到磁盘中去时,才返回,所以写IOPS可以远远高于读IOPS。

    结论:NFS的读IOPS与单个随机读IO的响应时间成反比,响应时间越短,读IOPS越高。所以ssd盘做nfs的IOPS大大高于普通硬盘的IOPS。

建议继续学习:

  1. Linux下的NFS    (阅读:3129)
  2. Oracle11g Direct NFS 测试    (阅读:2822)
  3. fio配合cgroup测试存储设备IOPS分配    (阅读:2035)
  4. 基于DRBD的高可用NFS解决方案分析    (阅读:923)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
© 2009 - 2024 by blogread.cn 微博:@IT技术博客大学习

京ICP备15002552号-1