대용량 파일 다운로드의 경우 aria2는 -x 16 -s 32를 지원하며 이러한 옵션은 다중 스레드 다중 청크 다운로드에 사용됩니다.
Python asyncio를 사용하면 파일 크기를 가져오고, 파일 크기에 따라 청크 부분을 생성하고, 각 청크를 임시 파일에 병렬로 요청하고 연결함으로써 이를 수행할 수 있습니다.
컬/wget + bash +xargs/parallel 유틸리티를 사용하여 동일한 작업을 수행할 수 있습니다.
사용
- 볼륨 헤더 요청 및 전체 크기 가져오기
- 블록 범위 생성
- 컬 --range 옵션은 각 청크를 병렬로 다운로드합니다.(병렬성에 대한 최신 컬 -Z 지원 또는 이전 컬에서는 xargs -P 또는 gnu 병렬 -J 옵션을 사용하십시오)
- 모든 부품을 결합
누구나 bash 기능을 만드는 데 도움을 줄 수 있습니까?안전 장치 - 파일이 성공적으로 다운로드될 때까지 True가 반복되는 동안 서버 로드 및 빈 블록 또는 임시 IP 금지의 경우 오류 처리 및 재시도
누군가 설명할 수 있습니까? idm 및 aria2와 같은 도구의 경우 서버에 대한 다중 연결을 생성하여 -x 16 및 -s 32 옵션이 작동하는 방식을 다운로드한다는 것을 읽었습니다. 다중 스레드 병렬 다운로드에 다중 연결 생성을 사용하는 방법과 컬 + bash를 사용하여 이를 달성하는 방법