zfs+nfs读写小文件奇慢,何故?
时间:2010-06-24
来源:互联网
本帖最后由 zsgd 于 2010-06-24 23:40 编辑
请大侠帮忙分析,谢谢!!!
一台nfs server 在open solaris 的zfs上,共享的目录为scratch_qa, 当在客户端读写一个大文件216M时间大约6秒以内,是正常的,但把这个文件展开,大小约218M,文件个数是898个,这时在客户端的读写时间大概在180s~~450秒之间,相差太大,同样的操作在另外一个同样的环境下,需要的时间基本在12~~15秒之间,测试如下。在nfs服务器上进行读写,就是不出网络是正常的,但网络的工作是正常的,cp一个大文件可以到25m/s-35m/s,网络是没有问题的。
1, 一个文件夹IT,大小为218M,文件个数是898个;一个由IT文件夹做的tar包,大小216M,
[root@sgzhang tmp]# du -sh IT*
218M IT
216M IT.tar
[root@sgzhang IT]# find * |wc -l
898
2, 下面的scratch/qa是从有问题的server mount过来的,cp IT目录用的时间基本在180s~~450秒之间,时间太长,因为文件个数较多,需要花费时间生成inode,但时间也太长了,属于不正常的。
[root@sgzhang tmp]# time cp -r IT/ /scratch/qa/
real 3m39.462s
user 0m0.030s
sys 0m0.432s
3, cp IT.tar文件需要的时间基本都在6秒以内,属正常。
[root@sgzhang tmp]# time cp -rp IT.tar /scratch/qa/
real 0m5.696s
user 0m0.018s
sys 0m0.298s
4,下面是客户端mount有问题的nfs server时的一些参数,有一点要注意是noacl,因为acl有可能会影响到读写,这里是noacl,现在看到的通讯协议是udp,tcp也测试过,同样有问题。
[root@sgzhang IT]# mount |grep scratch_qa
cnxass03:/data/export/scratch_qa on /scratch/qa type nfs (rw,intr,udp,noacl,hard,rsize=8192,wsize=8192,timeo=1000000,addr=172.17.192.23)
5, 下面是客户端mount 正常nfs服务器的一些参数。
[root@sgzhang tmp]# mount |grep pcc_qa
cnxafs02:/data/export/pcc_qa on /pcc/qa type nfs (rw,intr,noacl,udp,hard,rsize=8192,wsize=8192,timeo=1000000,addr=172.17.192.3
6, 下面是cp那个文件夹到正常服务器所用的时间。
[root@sgzhang tmp]# time cp -rp IT /pcc/qa/IT/
real 0m11.890s
user 0m0.017s
sys 0m0.453s
请大侠帮忙分析,谢谢!!!
一台nfs server 在open solaris 的zfs上,共享的目录为scratch_qa, 当在客户端读写一个大文件216M时间大约6秒以内,是正常的,但把这个文件展开,大小约218M,文件个数是898个,这时在客户端的读写时间大概在180s~~450秒之间,相差太大,同样的操作在另外一个同样的环境下,需要的时间基本在12~~15秒之间,测试如下。在nfs服务器上进行读写,就是不出网络是正常的,但网络的工作是正常的,cp一个大文件可以到25m/s-35m/s,网络是没有问题的。
1, 一个文件夹IT,大小为218M,文件个数是898个;一个由IT文件夹做的tar包,大小216M,
[root@sgzhang tmp]# du -sh IT*
218M IT
216M IT.tar
[root@sgzhang IT]# find * |wc -l
898
2, 下面的scratch/qa是从有问题的server mount过来的,cp IT目录用的时间基本在180s~~450秒之间,时间太长,因为文件个数较多,需要花费时间生成inode,但时间也太长了,属于不正常的。
[root@sgzhang tmp]# time cp -r IT/ /scratch/qa/
real 3m39.462s
user 0m0.030s
sys 0m0.432s
3, cp IT.tar文件需要的时间基本都在6秒以内,属正常。
[root@sgzhang tmp]# time cp -rp IT.tar /scratch/qa/
real 0m5.696s
user 0m0.018s
sys 0m0.298s
4,下面是客户端mount有问题的nfs server时的一些参数,有一点要注意是noacl,因为acl有可能会影响到读写,这里是noacl,现在看到的通讯协议是udp,tcp也测试过,同样有问题。
[root@sgzhang IT]# mount |grep scratch_qa
cnxass03:/data/export/scratch_qa on /scratch/qa type nfs (rw,intr,udp,noacl,hard,rsize=8192,wsize=8192,timeo=1000000,addr=172.17.192.23)
5, 下面是客户端mount 正常nfs服务器的一些参数。
[root@sgzhang tmp]# mount |grep pcc_qa
cnxafs02:/data/export/pcc_qa on /pcc/qa type nfs (rw,intr,noacl,udp,hard,rsize=8192,wsize=8192,timeo=1000000,addr=172.17.192.3

6, 下面是cp那个文件夹到正常服务器所用的时间。
[root@sgzhang tmp]# time cp -rp IT /pcc/qa/IT/
real 0m11.890s
user 0m0.017s
sys 0m0.453s
作者: zsgd 发布时间: 2010-06-24
看dmesg有报错没有?
作者: bj161109 发布时间: 2010-06-25
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28