2013-03-04 3 views
0

다른 서버에있는 파일을 제공 할 수있는 HttpModule을 만들고 싶습니다.다른 서버에 파일을 제공하는 HttpModule

서버 A는 공개적으로 액세스 할 수 있으며 file.txt에 대한 요청을받습니다. 이 파일은 서버 B에 있고 서버 A는 사용자에게이 파일을 제공합니다. 서버 B는 공개적으로 사용할 수 없습니다.

HttpModule을 사용하여 성능을 극대화하는 방법은 무엇입니까?

서버 A가 서버 B에서 파일을 다운로드하여 사용자에게 다시 스트리밍하도록 할 수 있습니다. 서버 A에서 많은 자원을 필요로합니다.

다른 옵션은 서버 A가 열린 파일 공유에서 서버 B로 파일을 직접 제공하는 것일 수 있습니다. 서버 A에서 서버 메모리가 더 적게 필요하지만 서버 B에서 서버 A로 파일을 스트리밍해야 할 수도 있습니다.

내가 요청이 단순히 서버에

리디렉션 할 수 없습니다 서버 B로 리디렉션 할 수 있습니다 다음 파일이 클라이언트에 서버 B에서 직접 반환 할 수 있습니다 가능한 서버 A에 의해 촉진 몇 가지 방법이 희망 B는 최종 사용자가 직접 사용할 수 없으므로

답변

1

나는 아마도 HttpModule을 작성하는 데 투자하지 않을 것이지만 대신 ARR (Application Request Routing) 모듈을 사용하여 "proxying"을 수행하여 높은 성능을 얻습니다. 캐싱 기능을 사용할 수도 있습니다. 일부 파일이 "핫"인 경우 백엔드 서버를 치지 않고 "프런트 엔드"서버에서 직접 다운로드 할 수 있습니다. 캐싱을 사용하면 가장 빠른 옵션이 될 것이고 캐싱에 관해서는 꽤 똑똑 할 수 있기 때문에 통증이없는 방법 중 하나가 될 것입니다.

초당 수천 개의 요청을 처리 할 수 ​​있도록 최적화되어 있으며 비동기식으로 처리하여 엄청난 숫자로 확장합니다. 많은 콘텐츠 전달 네트워크 유형의 상황에서 사용되므로 정말 빠른 속도를 기대할 수 있습니다.

+0

그것은 실제로 훌륭한 솔루션이지만, HttpModule의 범위 내에 있어야합니다. –

관련 문제