2010-01-22 3 views
1

.NET Remoting을 처음 사용하면서 다른 통신 채널을 익숙하지 못했습니다. 내가 상자 밖으로 HttpChannel 및 TcpChannel 알아. 다른 하나는 Tcp이지만 하나는 Http라는 것을 알지만 Tcp가 더 빠른 이유를 알지 못합니다..NET Remoting - HttpChannel vs TcpChannel

+0

확인해보십시오. http://stackoverflow.com/questions/1196623/tcp-vs-http-benchmark – Arnkrishn

+0

.NET Remoting 기술은 WCF를 사용하지 않으므로주의해야합니다. 새로운 개발을 위해 Remoting을 사용하지 않아야합니다. –

+0

WCF를 학습하면서 .NET Remoting을 배우고 WCF가 해결 한 단점을 확인했습니다. 그래도 그것을 지적 주셔서 감사합니다! –

답변

1

Tcp를가 빠르다는 TcpChannel을 함께 와이어를 통해 데이터 전송의 수단으로 바이너리 사용한다는 것입니다 이유, 1024 이상의 모든 포트 번호를 사용할 수 있습니다 (처음 1024 개의 포트가 예약 됨). HttpChannel은 웹 브라우저와 공유되는 표준 포트 인 포트 80을 사용하지만 HttpChannel은 다른 서비스와 융통성있게 사용하려는 경우에 사용됩니다. 또한 HttpChannel을 통해 전달 된 데이터는 텍스트로 인코딩되므로 이미지를 검색하는 경우 이미지가 먼저 Base64 데이터 형식으로 인코딩되어 전송되어야합니다.

일반적으로 속도를 원한다면 TcpChannel으로 이동하고 유연성을 원하면 HttpChannel로 이동하십시오.

호프가 도움이 되었으면 안녕하세요, 탐.

+0

Remoting이 둘 이상의 HttpChannel을 지원할 수 있다고 가정합니까? – Dave

3

HTTP 채널은 거대한 (상대적으로 말하면) 헤더를 만들고 복잡한 응답을 구문 분석해야합니다. TCP 채널은 요청 당 훨씬 적은 오버 헤드로 효율적인 바이너리 프로토콜을 사용합니다.

0

Tcp는 프로토콜이 빠르기 때문에 더 빠릅니다.

Tcp는 안전한 안정적인 연결을 설정할 수있는 낮은 수준의 프로토콜입니다. Http는 브라우저에서 웹 서버로 보낼 수 있으므로 사용하기가 더 쉽습니다.

1

TCP가 HTTP보다 약간 빠릅니다. HTTP는 기본적으로 더 느린 비누 포맷터를 사용하고 TCP 기본값은 더 빠른 바이너리 포맷터를 사용합니다. HTTP가 빠른 바이너리 포맷을 지원합니다 - 당신은 단지 그것을

소스를 선택해야합니다 Factoids about HTTP and TCP remoting channels

관련 문제