Менеджер загрузок в [закрытом] Java

После долгих экспериментов и разочарований я в конце концов решил, что не могу делать именно то, что хочу.

В конечном счете, я пошел дальше и дал дочернему объекту свой собственный синтетический ключ и позволил Hibernate управлять им. Это не идеально, так как ключ почти такой же большой, как и остальные данные, но он работает.

7
задан ripper234 31 October 2009 в 18:17
поделиться

2 ответа

Протокол HTTP поддерживает запуск частичной загрузки со смещением, но имеет ограниченную поддержку для проверки локальной частичной версии файла, чтобы убедиться, что к концу не прикреплен мусор. (или что-то подобное). Если ваша среда позволяет это, я рекомендую rsync с параметром --partial. Он разработан для поддержки такого рода функций из командной строки.

Если вы не можете использовать rsync, вы можете попробовать работать с Commons-HTTPClient и использовать HTTP-заголовок Range для загрузки блоков управляемого размера.

2
ответ дан 7 December 2019 в 14:34
поделиться

Если вы знаете, как создавать сокеты и потоки в java, это не так уж и сложно.

Сначала создайте запрос и прочтите заголовки, чтобы получить заголовок Content-length . Затем разработайте стратегию разделения вашего запроса на куски, например, по 500 КБ каждый запрос. Затем запустите, скажем, 10 запросов, используя поток для каждого запроса. В каждом запросе вы должны определить заголовок Range . Я предлагаю вам прочитать RFC HTTP / 1.1 Header Fields здесь , если вы действительно хотите получить хорошее представление об используемом протоколе.

Однако, если вы ищете простой выход, rsync или scp должны достаточно.

2
ответ дан 7 December 2019 в 14:34
поделиться
Другие вопросы по тегам:

Похожие вопросы: