asp 다운로드 용량

그림 1에서 FileDownloader는 URL 쿼리 문자열 매개 변수로 다운로드 하려는 파일의 이름을 포함 하는 간단한 URL을 사용 하 여 서버를 호출 하 여 파일 다운로드를 시작 하 고 내부적으로 HTTP 메서드 (HEAD)를 사용 하므로 처음에는 서버는 응답 헤더만 전송 하 고 그 중 하나는 전체 파일 크기를 포함 합니다. 그런 다음 클라이언트는 병렬. ForEach 구문을 사용 하 여 매개 변수의 청크 크기를 기준으로 총 파일 크기를 청크 (바이트 범위)로 분할 합니다 (청크 크기 = 5242880). 각 개별 반복에 대 한는 병렬. ForEach 구성 연결 된 바이트 범위에서 전달 하는 별도 스레드에서 처리 메서드를 실행 합니다. 처리 방법 내에서 클라이언트는 동일한 URL을 사용 하 여 서버에 대 한 HttpWebRequest 호출을 발행 하 고 해당 처리 방법에 제공 된 바이트 범위를 포함 하는 HTTP 요청 헤더를 내부적으로 추가 합니다 (범위: 바이트 = 5242880, 범위: 바이트 = 5242880-10485760 등). 본질적으로, 그림 1에 표시 된 것 처럼 독립 실행형 실행 클라이언트 (FileDownloader)의 간단한 URL을 사용 하 여 파일을 청크 단위로 병렬로 다운로드할 수 있는 다중 스레드 파일 다운로더로 기존 IIS 웹 서버를 변환 합니다. 매개 변수 (청크 크기 = 5242880)는 선택 사항이 며, 포함 되지 않은 경우 전체 파일을 하나의 청크에 다운로드 하는 것이 기본값입니다. 그림 2와 그림 3은 대부분의 다른 파일 다운로드 소프트웨어와 같이 처음부터 전체 다운로드를 완전히 다시 시작 하지 않고 성공할 때까지 파일의 실패 한 부분만 반복적으로 재시도 하는 방법을 보여 줍니다. 그림 2 다운로드 클라이언트로 서의 독립 실행형 실행 파일 (실패 한 청크 포함) FileDownloader .exe는 여러 스레드를 시작할 수 있으며, 각각은 각각 별도의 HttpWebRequest 호출을 실행 하며,이 경우에는 해당 합계를 기반으로 하 여 다운로드 되는 파일과 별개의 부분 (바이트 범위)에 해당 합니다. 그림 2와 같이 지정 된 « 청크 바이트 »로 나눈 파일의 크기입니다. 윈도우 이것은 마이크로소프트 지원 다운로드 | Iis 7, iis 7.5, iis 8, iis 8.5 샘플 프로젝트의 경우에는 가상 디렉터리 아래에 있는 bin 디렉터리에 다운로드 처리기 .dll 및 IOThreads .dll을 복사 하 고 다음과 같이 web.config의 처리기 섹션 및 모듈 섹션에 항목을 추가 하면 됩니다. 그림 1은 다운로드 처리기 .dll 및 FileDownloader를 통해 서버 컴퓨터의 하드 드라이브에 있는 파일의 청크 단위로 처리 흐름을 보여 주는 디자인에 대 한 개괄적인 개요를 제공 하 고 있습니다.

해당 프로세스와 관련 된 HTTP 프로토콜 헤더를 보여 주는 클라이언트 컴퓨터의 하드 드라이브입니다. 웹 브라우저에 내장 된 기본 다운로드 클라이언트는 https://localhost/DownloadPortal/Download?file=test.txt&chunksize=5242880와 같은 URL을 사용 하 여 다운로드 클라이언트로도 사용할 수 있습니다. 두 번째로 프런트 엔드 클라이언트 (FileDownloader)와 백 엔드 서버 (다운로드 처리기 .dll) 내부의 샘플 프로젝트 코드는 단순 하 고 명확한 샘플 코드 블록으로 제공 되므로 HTTP 요청 및 응답 헤더를 사용 하 여 HTTP 프로토콜에서 부분 콘텐츠 바이트 범위를 용이 하 게 합니다.

Ce contenu a été publié dans Non classé. Vous pouvez le mettre en favoris avec ce permalien.

Les commentaires sont fermés.