使 axel 下载器实现多进程

使 axel 下载器实现多进程

我可以并行运行几个 axel 进程来下载同一个文件吗?每次我启动新进程时:

axel -a -n 10 http://image-net.org/image/ILSVRC2017/ILS                                                                                                                VRC2017_DET.tar.gz

我收到通知:

Initializing download: http://image-net.org/image/ILSVRC2017/ILSVRC2017_DET.tar.                                                                                                                gz
File size: 60855983982 bytes
Opening output file ILSVRC2017_DET.tar.gz.0
State file found: 5103495158 bytes downloaded, 55752488824 to go.
Starting download

然后,我所有的并行进程在状态栏上显示相同的下载百分比。

axel -a -n 10 http://image-net.org/image/ILSVRC2017/ILSVRC2017_DET.tar.gz 

[  9%] [0    1    2     3    4    5    6    7    8    9   ] [   2,5MB/s] [ 5h57]

剩下的只是速度和时间不同

当我在多进程中运行时,总共有 10mb/s,否则只有进程有 2mb/s。

答案1

根据手册页axel本身就会使用多个连接,所以不需要多次运行。

使用 4 个连接下载示例:

axel -a -n 4 http://mirror.switch.ch/ftp/ubuntu-cdimage/18.04/ubuntu-18.04-desktop-amd64.iso
Initializing download: http://mirror.switch.ch/ftp/ubuntu-cdimage/18.04/ubuntu-18.04-desktop-amd64.iso
File size: 1921843200 bytes
Opening output file ubuntu-18.04-desktop-amd64.iso.0
Starting download

[ 30%] [....0        .....1        .....2         ....3        ] [  11.1MB/s] [01:54]^C

清楚地显示....N它使用了 4 个连接

使用 6 个连接下载示例:

axel -a -n 6 http://mirror.switch.ch/ftp/ubuntu-cdimage/18.04/ubuntu-18.04-desktop-amd64.iso
Initializing download: http://mirror.switch.ch/ftp/ubuntu-cdimage/18.04/ubuntu-18.04-desktop-amd64.iso
File size: 1921843200 bytes
Opening output file ubuntu-18.04-desktop-amd64.iso.0
State file found: 583252805 bytes downloaded, 1338590395 to go.
Starting download

[ 32%] [....0        .....1        .....2         ....3        ] [   9.9MB/s] [02:04]

仍有 4 个连接!看起来axel将重新使用部分下载,但将继续使用相同数量的连接。

使用 6 个连接下载示例(删除临时文件后):

rm ubuntu-18.04-desktop-amd64.iso*
axel -a -n 6 http://mirror.switch.ch/ftp/ubuntu-cdimage/18.04/ubuntu-18.04-desktop-amd64.iso Initializing download: http://mirror.switch.ch/ftp/ubuntu-cdimage/18.04/ubuntu-18.04-desktop-amd64.iso File size: 1921843200 bytes Opening output file ubuntu-18.04-desktop-amd64.iso Starting download

[  2%] [0        1        2         3        4        5        ] [     11.1MB/s] [02:40]

现在我们可以看到axel使用 6 个连接。

请注意,下载速度可能不会因为连接数量而降低,在这种情况下您只会向网络和远程主机推送更多的负载。

相关内容