Есть ли решение для BitTorrent Uploader? - PullRequest
1 голос
/ 25 января 2011

У меня есть требование от моего клиента, чтобы иметь возможность загружать очень большие файлы.

Я говорю о 7 ГБ файлах. Веб-сайт, на котором они в настоящее время работают, является приложением ASP.NET 4.0, поэтому очевидно, что стандартная схема загрузки для моего веб-приложения не будет работать.

Я перебираю несколько вариантов, пытаясь выяснить, каким будет лучший маршрут.

Один вариант, который я подумываю посмотреть, смогу ли я сделать, - это иметь BitTorrent Uploader. Конечные пользователи этого приложения обычно имеют один и тот же файл под рукой, поэтому идея заключается в том, чтобы конечный пользователь зашел на сайт и сказал, что хочет загрузить файл. В этот момент они выбирают файл, а затем сервер немедленно помечает этого человека как seed для этого файла. Затем мое веб-приложение перейдет на предварительно настроенную пиявку на нашей стороне и даст команду пиявке загрузить файл. Я ожидаю, что в какой-то момент во время или после этого процесса торрент совершит какое-то волшебство, чтобы найти других сеялок в сети клиента или где-то еще, но это идея.

Есть ли какая-нибудь технология, которая уже делает это? Или я описываю что-то, что мне придется строить с нуля?

1 Ответ

3 голосов
/ 25 января 2011

Не похоже, что это будет легко сделать с помощью BitTorrent.Для работы BT вам нужны торрент-файлы.Чтобы создать торрент-файл для определенного файла, вам нужен этот файл (торрент-файл в основном содержит хеш файла).В общем для торрента нужен трекер.Вы можете положиться на публичную, но это может быть рискованная зависимость.Вы можете работать самостоятельно, но у этого есть другие проблемы (например, вам нужно убедиться, что он заблокирован, чтобы он не стал бесплатным для всех последних фильмов, музыки и ТВ).

Если у вас есть трекер, вам нужно координировать загрузку торрентов.Вашим пользователям придется создавать торрент-файлы, что является очень сложным шагом, а затем, вероятно, загружать их обычными методами HTTP.Помимо того, что пользователь должен загрузить торрент, вам нужно будет напомнить пользователю, что нужно начать сеять торрент в выбранном им клиенте.Затем вы захотите автоматически начать пичковать торрент (опять же, проблема безопасности здесь - что, если пользователь загрузит совершенно не связанный торрент для последнего эпизода Хауса?).Помимо проблемы безопасности, это, вероятно, самая простая часть - большинство торрент-клиентов могут быть настроены на просмотр каталога и автоматическое начало загрузки торрент-файлов в этом каталоге.Как только вы начали загрузку, вы должны убедиться, что пользователь продолжает посылать торрент до тех пор, пока вы не закончите, иначе вы застрянете с бесполезным частичным файлом.

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

...