根据各种NFS调优资源,更改nfsd线程的数量(在我的情况下是内核线程)会影响性能.通常,这个建议的框架是在大量使用的服务器上增加默认值8的数量.我在当前配置中找到的内容:
RPCNFSDCOUNT = 8 :(默认值):13.5-30秒在客户端上获取1GB文件,因此35-80MB /秒
RPCNFSDCOUNT = 16:18s来捕获文件60MB / s
RPCNFSDCOUNT = 1:8-9秒来捕获文件(!!?!)125MB / s
RPCNFSDCOUNT = 2:87s来捕获文件12MB / s
我应该提一下,我正在导出的文件是使用Xen的PCI-passthrough安装在服务器上的RevoDrive SSD上;在服务器上,我可以在几秒钟内(> 250MB / s)捕获文件.我在每次测试之前都在客户端上放置缓存.
我真的不想让服务器配置只有一个线程,因为我猜测当有多个客户端时效果不会很好,但我可能会误解它是如何工作的.我重复了几次测试(在两者之间更改服务器配置),结果相当一致.所以我的问题是:为什么1线程的性能最好?
我试过改变的其他一些事情,很少或没有效果:
>将/ proc / sys / net / ipv4 / ipfrag_low_thresh和/ proc / sys / net / ipv4 / ipfrag_high_thresh的值从默认的192K,256K增加到512K,1M
>将/ proc / sys / net / core / rmem_default和/ proc / sys / net / core / rmem_max的值从默认值128K增加到1M
>使用客户端选项安装rsize = 32768,wsize = 32768
从sar -d的输出中我了解到底层设备的实际读取大小相当小(<100字节),但这在客户端本地读取文件时不会引起问题. RevoDrive实际上暴露了两个“SATA”设备/ dev / sda和/ dev / sdb,然后dmraid选择了一个假的RAID-0条纹,我已经挂载到/ mnt / ssd然后绑定挂载到/ export / ssd.我已经使用两个位置对我的文件进行了本地测试,并看到了上面提到的良好性能.
如果答案/评论要求更多细节,我会添加它们.
解决方法
原文地址:https://www.jb51.cc/linux/397742.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。