慢速NFS传输小文件的性能

前端之家收集整理的这篇文章主要介绍了慢速NFS传输小文件的性能前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在使用RAID 1 0组合的HP ML370 G5,Smart Array P400,SAS磁盘上使用Openfiler 2.3.

我使用Openfiler的基于Web的配置从ext3分区设置了NFS共享,我成功地从另一台主机安装了共享.两个主机都使用专用的千兆链路进行连接.

使用dd的简单基准:

$dd if=/dev/zero of=outfile bs=1000 count=2000000
 2000000+0 records in
 2000000+0 records out
 2000000000 bytes (2.0 GB) copied,34.4737 s,58.0 MB/s

我发现它可以达到适中的传输速度(58.0 MB / s).

但是如果我复制一个包含许多小文件(.PHP和.jpg,每个文件大约1-4 kB)的目录,总大小约为300 MB,那么cp过程大约需要10分钟.

NFS不适合像上面那样的小文件传输吗?或者是否有一些必须调整的参数?

解决方法

传输许多小文件总是比传输单个大文件慢得多的原因有很多.对于读取,文件更可能散布在磁盘周围,需要遍布整个地方才能获取它们.正如Evan所说,在NFS(或任何其他文件系统)的情况下也会涉及元数据,这也使事情变得复杂.

您可以尝试将您的rsize和wsize参数增加到NFS挂载,看看是否有助于提高性能.另外在调优NFS上检查this question以获得最小延迟,因为它有很多有用的建议,这将有助于许多小文件传输.

猜你在找的Linux相关文章