Как передать большой файл по сети с плохим соединением? Как оптимизировать передачу?

Разбейте файл на части, передавайте с возможностью продолжения и проверяйте целостность. После обрыва нужно повторять недостающие части, а не весь файл.

Короткий ответ

Что ответить на собеседовании

Разбейте файл на части, передавайте с возможностью продолжения и проверяйте целостность. После обрыва нужно повторять недостающие части, а не весь файл.

Подробный разбор

Ответ с пояснениями

Разбейте файл на части, передавайте с возможностью продолжения и проверяйте целостность. После обрыва нужно повторять недостающие части, а не весь файл.

Согласуйте идентификатор и версию файла, размер, смещения и контрольные суммы. Сервер подтверждает сохранённые части; повтор одной части должен быть идемпотентным. После завершения проверяется весь файл и выполняется атомарное переключение временного результата в готовый.

Используйте ограниченный параллелизм, таймауты и backoff. Сжатие полезно не для всех форматов; уже сжатое видео может почти не уменьшиться. Не отключайте TLS ради скорости и не считайте успешную отправку в сокет подтверждением записи файла получателем.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее