Page 1 of 1

Распределенные закачки

Posted: 03 Aug 2008, 19:21 Sun
by Toxic
Есть идея:

Сделать коммуникации между UI и непосредственно качающими потоками через сокеты или любое приемлимое средство IPC (например named pipes) - таким образом можно будет разделить интерфейс и worker threads. А имея такую архитектуру можно будет размещать качающие потоки где угодно. Таким образом можно будет качать один файл несколькими экземплярами программы одновременно (у каждой могут быть свои настройки прокси и т.д.), или вообще качать один файл с нескольких компьютеров одновременно.

Т.е. на одном компе будет запущена программа с UI, которая будет выступать в роли координатора - будет отдавать команды какому потоку и что именно качать. А потоки (находящиеся в других процессах) будут непосредственно качать и отдавать центральной части статистику.

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

Posted: 04 Aug 2008, 9:42 Mon
by x2088
Очередная идея, где надо всё переписать с нуля, у меня тоже была идея такого плана...

Posted: 04 Aug 2008, 21:14 Mon
by Toxic
Я поначалу загорелся идеей самому написать, но потом прикинул объем работы, и понял, что гораздо легче добавить код в существующую качалку, чем писать все с нуля самому.

А про внутреннюю архитектуру DM мне мало чего известно, поэтому идею описал в общих фразах.

Posted: 12 Aug 2008, 11:10 Tue
by iwfriends
Дык просто надо в ДМ функцию типа "качать с зеркал одновременно" или "включить зеркала в текущую закачку" или еще как. Не суть. Важно что это должно делать.
Можно причем уже готовый механизм доработать.Идея в том, что уже с давних времен ДМ умеет бить файл на части. Дак а в чем проблема попробовать скачать эти части с разных серверов? При этом можно учесть скорость скачивания с данного сервера(чтобы секции давались по силам). При этом хочется чтобы эти закачки могли учитывать поддержку сервера на разбиение и докачку. Но это уже мелочи))
Все зеркала, которые есть в списке будут задействованы. Это именно в самом ДМ надо реализовать. И тогда торрены уйдут в прошлое. :P Было бы неплохо.