2016-09-09 8 views
0

Webclient.UploadFileAsync 함수를 사용하여 나머지 웹 서비스를 호출하여 파일을 서버에 업로드합니다. 웹 응용 프로그램에서도 서버에 업로드 할 수 있습니다.Webclient.UploadFileAsync 함수의 속도를 높이는 방법은 무엇입니까?

서버 측 프로세싱은 밀리 초 단위입니다. 따라서 대부분의 업로드 시간은 전송에 소비됩니다. 2 분 안에 웹 응용 프로그램에서 6.28MB 파일을 업로드 할 수 있지만 Webclient.UploadFileAsync을 사용하여 winform 응용 프로그램에서 수행 한 동일한 업로드 작업은 3 분이 걸립니다.

웹 브라우저 업로드의 차이 & webservice 업로드는 전자가 파일을 서버에 직접 저장하고 웹 서비스의 경우 먼저 웹 서비스가 호출 된 다음 파일이 서버에 저장된다는 것입니다.

이렇게 큰 차이가 나는 이유는 무엇입니까? 그리고이 차이를 어떻게 줄일 수 있습니까?

업데이트 : 필자가 제안한대로 피들러를 사용하여 흥미로운 것을 발견했습니다. 파일을 업로드 할 때 피 들러가 실행되는 동안 업로드 속도가 크게 향상되었습니다. 웹 응용 프로그램의 속도를 늦추십시오. 그리고 언제 피들러가 작동하지 않을 때 업로드를 시도했는데 이전과 같이 업로드 속도가 매우 느립니다. 그래서 웹 클라이언트 클래스에 버그가있는 것 같습니다.이 문제를 해결하려면 어떻게해야합니까?

+0

피들러 (Fiddler) 및 와이어 셔크 (WireShark)와 같은 네트워크 추적 도구를 사용하여 네트워크 수준에서 진행중인 작업을 확인하십시오. – leetibbett

답변

0

내 평판 때문에 의견을 추가 할 수 없으므로 미리 생각 해보니 미안하지만 미팅을 진행해야하므로 전반적인 로딩 시간이 늘어납니다. 그다지 중요하지 않고 올바른 도구를 가지고 있으므로 FTP 클라이언트와 라이브러리가 많으며 웹 서버의 속도보다 빠를 수도 있습니다. 웹 서버를 사용해야하는 경우 외부 웹 클라이언트를 사용하는 것보다 많은 답변을 얻지는 못합니다. 약간 빠른 실행이 가능합니다.

질문에 대답하려면 보안 FTP 라이브러리를 사용하는 것이 가장 빠를 것입니다. 속도 차이는 주로 실제 서버를 치기 전에 통과해야하는 미들웨어 때문입니다.