тайм-аут соединения и постоянный сброс соединения другим пользователем с помощью wget - PullRequest
0 голосов
/ 30 января 2020

Я пытаюсь загрузить Criteo Terabyte Click Logs (с https://labs.criteo.com/2013/12/download-terabyte-click-logs-2/) на удаленный сервер.

Я раньше не использовал curl, поэтому написал оболочку Скрипт для загрузки всех 24 файлов в фоновом режиме. Вот как выглядит мой сценарий оболочки:

#!/bin/bash
cd /dir/to/download/
for a in 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
do
    nohup wget http://azuremlsampleexperiments.blob.core.windows.net/criteo/day_$a.gz > day_$a.out &
done

Но загрузки (которые должны были закончиться в течение 24 часов, так как его скорость загрузки минимум 200 КБ / с заняло бы около 80 КБ, чтобы загрузить 16 ГБ данных на файл, и 24 часа (86,4 тыс. Секунд) заняли несколько дней, и я обнаружил, что wget постоянно получает сброс соединения или тайм-аут. Вот что я обычно вижу:

Либо

2020-01-30 10:41:52 (213 KB/s) - Read error at byte 589119712/16309554343 (Connection timed out). Retrying.

или

2020-01-30 13:38:03 (377 KB/s) - Read error at byte 2690156144/16683852232 (Connection reset by peer). Retrying.

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

Какие есть предложения, чтобы загрузка данных не прекращалась в середине? Любая помощь или pu sh в правильном направлении будет принята с благодарностью!

...