Какие на данный момент есть методы скачивания файлов?
Допустим, есть определённый набор файлов, от маленьких до больших (несколько ГБ). И есть много клиентов, у которых установлена наша программа на C++ и которым нужно эти самые файлы загрузить. На данный момент реализовал в виде обычной HTTP загрузки с нашего сайта. Скорость загрузки, естественно, оставляет желать лучшего, особенно если забить канал.
Итак, какие ещё есть современные варианты реализации данной задачи, для достижения хорошей скорости загрузки независимо от кол-ва качающих (в разумных пределах)?
Желательны кроссплатформенные способы с использованием Boost или других библиотек, но не откажусь и от Windows API. В крайнем случае интересны решения на QT, но на данный момент он в проекте не используется.
торрент или подобные п2п системы.
чем больше скачивателей одного и того же контента, тем более эффективными становятся.
кросплатформенные по самое не балуйся.
Смотрите в сторону например - aria2 загрузка по torrent, ftp, http, причем одновременно по нескольким протоколам.
В результате можно как размещать контент на множестве ftp и веб серверов, а так же отдавать p2p
Не совсем понял, если отдавать по http, то обычно отдается со скоростью соединения, если скорость дисков не мешает... Чем отдаете сами файлы? Nginx/Apache или что-то самописанное?