代码改变世界

如何快速下载服务器端文件

2021-07-05 10:41  AlfredZhao  阅读(530)  评论(0编辑  收藏  举报

总结提速的三板斧:

1.压缩

可以提前后台去做,当然压缩的时间也需要综合考虑,综合看是否值得;
nohup gzip *.dmp &

比如Oracle数据泵导出文件本身没有压缩的情况下,原始的dmp文件经过gzip压缩后也可以达到约5~6倍的压缩比。这样网络传输的压力就对应减少了5~6倍。
如果是文本类数据,那压缩效果会更显著。

2.并行

上面的压缩操作虽然可以后台,但在dmp文件较多,服务器CPU资源充足情况下,也可以进一步加速,并行放在后台执行;
nohup gzip xxx07.dmp &
nohup gzip xxx06.dmp &
nohup gzip xxx03.dmp &
nohup gzip xxx09.dmp &
nohup gzip xxx04.dmp &
nohup gzip xxx02.dmp &
nohup gzip xxx01.dmp &
nohup gzip xxx08.dmp &
nohup gzip xxx10.dmp &
nohup gzip xxx05.dmp &

这样10个文件同时压缩,时间就相当于节省了接近10倍。文件越多越明显,但通常并行度不要超过服务器CPU核数。

3.网络

看看网络有没有提速空间,使用自带的字符终端要好过第三方图形工具;尤其有限速情况; MAC可以使用自带的terminal程序进行: Shell -> 新建远程连接 -> 安全文件传输 -> 使用“+”添加服务器IP和连接信息,可达到接近带宽的传输速度。 当然,如果带宽本身也有条件提升,效果会更好。 ps:可以使用“活动监视器”直观看到有没有效果。

结合实际情况,综合使用上述方法,可以很大程度提升效率。
如果有更好的方法,欢迎留言讨论。