Создание многопроцессного загрузчика 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]

отличается только скорость и оставшееся время

Когда я работаю в многопроцессорном режиме, у меня всего 10 Мбит / с, иначе 2 Мбит / с только для процесса.

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 соединений.

Обратите внимание, что скорость загрузки не может быть уменьшена из-за количества подключений, и в этом случае вы только увеличите нагрузку на сеть и на удаленный хост.

Другие вопросы по тегам