2011-07-06 3 views
0

클라이언트 응용 프로그램에서 WCF 서비스 메서드를 호출했습니다. 때로는이 메소드 호출의 매개 변수 중 하나가 10MB에 가깝습니다. 이로 인해 클라이언트가 실제로 느린 네트워크에있을 때 문제가 발생합니다. 10MB 데이터가 서버로 전송 될 때 네트워크의 다른 사용자는 심각한 속도 저하를 경험합니다. 메서드 호출 당 대역폭 사용을 제한하는 방법이 있습니까?WCF 및 네트워크 대역폭 조절

높음 및 낮음을 검색 할 때 옵션 만 사용자 정의 채널을 쓰는 것 같습니다. 맞춤 채널을 작성하는 방법에 대한 적절한 문서를 찾을 수 없습니다. 모든 포인터가 도움이 될 것입니다.

답변

1

인프라 측면을 살펴 보는 것이 가장 좋습니다. 방화벽이나 네트워킹 장비,로드 밸런서.

0

정말 작은 소켓 송신 버퍼를 설정합니다 (예 : 1k). 결과도 확인하십시오. 시스템이 통과 한 내용을 수정할 수 있습니다. 가능한 한 낮게 설정하십시오. 목표는 대역폭 * 지연 제품보다 작아 지므로 보내기가 '파이프를 채울'수 없으므로 다른 사용자를위한 공간이 마련됩니다.

+0

바인딩 또는 다른 OS 레벨 매개 변수에서 maxbuffersize, maxbufferpoolsize 및 maxreceivedmessagesize를 언급하고 있습니까? – Elnino

+0

SO_SNDBUF 또는 Java Socket.setSendBufferSize()를 참조하고 있습니다. – EJP