前面测了linux系统和linux系统之间的copy,这次需求又变了,要测从windows复制到linux系统的性能。
查看windows下主流的拷贝工具,发现了这四款FastCopy,Teracopy,ExtremeCopyPro,Supercopier。由于都是本机拷贝,而我要测试的是跨网络的性能,于是只选择FastCopy作为比较对象。
跨网络的协议,我选择samba,ftp,nfs。
此外,在做关于大量小文件拷贝的那些事儿(一)测试中,发现使用tar方式,通过管道不落盘拷贝的方法,性能很好,觉得windows从linux拷贝,也可以考虑这种方式,只需要将windows的磁盘mount过去就行了。
76000张图片,每张大小在200k-300k之间,一共是21.8G
windows Server 2008 内存80G 磁盘2T HGST HST724020AL cpu intel 2620 v4
linux centos 7.5 内存126G 磁盘500G Seagate Constellation ES的ST500nm0011 cpu intel 2620 v2
方式 平均速率 用时 其他要求
FastCopy 4.54MB/s 01:22:48 linux侧需要部署nfs或者samba服务器,windows侧提供fastCopy小工具
samba 2.36MB/s 02:20:10 linux侧需要部署samba服务器
vsftp 4.14MB/s 01:29:20 linux侧需要部署vsftp服务器,windows侧需要提供ftpclient,测试中使用的是FileZilla
nfs 0.01MB/s 大于66小时 linux侧部署nfs服务,windows侧也要开启nvf服务并挂载,还需要修改注册表信息。
mount+tar 52.1MB/s 00:05:59 windows侧需要开放目标文件的可读权限
备注:windows往windows系统使用fastcopy拷贝的性能是13.4MS/s。
以上是使用网络的方式拷贝,有同事建议我使用常用的程序员工具试试。比如win-scp,putty等等,我尝试了一下,得到如下数据
使用win-scp Scp的性能为8.7MB/s (文件多了,程序容易出现崩溃)
使用win-scp sftp的性能为20.3MB/s(文件多了,程序容易出现崩溃)
pscp.exe的性能为9.7MB/s(putty自带)
psftp.exe的性能为14.1MB/s(putty自带)
结论:
虽然FastCopy在拷贝大文件时能达到110MB/S的极限速度,但在大量小文件的拷贝上的性能很弱,本地同盘拷贝也只有8.02MB/s的速率。
mount + tar的方式,拷贝大量小文件的性能明显优于其他工具。
综合考虑,windows往linux拷贝大量小文件,psftp最合适。
参考链接:
https://xbeta.info/fastcopy-teracopy-extremecopy-supercopier.htm
网友评论