Frage

Ich bin neu in .NET Remoting und nicht sehr vertraut mit den verschiedenen Kommunikationskanälen, die verwendet werden können. Ich weiß, dass es HttpChannel und TCPChannel aus der Schachtel gibt. Ich verstehe, dass einer HTTP ist, während der andere TCP ist, aber ich verstehe nicht, warum TCP schneller ist.

War es hilfreich?

Lösung

Der Grund, warum TCP schneller ist, ist, dass es Binärdatei als Datenübertragung über das Kabel mit TCPChannel verwendet. Sie können jede Portnummer über 1024 verwenden (die ersten 1024 Ports sind reserviert). Während es mit HTTPChannel verwendet wird, wird Port 80 verwendet, dem Standard -Port, der mit Ihrem Webbrowser gemeinsam genutzt wird, wird das HTTPChannel verwendet, wenn Sie es mit anderen Diensten flexibel machen möchten. Darüber hinaus werden Daten, die durch das HTTPChannel geleitet werden, im Text codiert, was es langsamer macht. Wenn Sie ein Bild abrufen würden, müsste dieses Bild zuerst in das Base64 -Datenformat codiert und übertragen werden.

Wenn Sie Geschwindigkeit wünschen, entscheiden Sie sich im Allgemeinen für TCPChannel, wenn Sie Flexibilität wünschen, für httpChannel.

Hoffe das hilft, am besten, Tom.

Andere Tipps

Der HTTP -Kanal muss einen riesigen (relativ gesehenen) Header erstellen und komplexe Antworten analysieren. Der TCP -Kanal auf dem verwendet ein effizientes binäres Protokoll mit viel weniger Gemeinkosten pro Anforderung.

TCP ist etwas schneller als HTTP; HTTP standardmäßig mit dem langsameren Seifenformatierer und der TCP -Standardeinstellung zur Verwendung des schnelleren binären Formatierers; HTTP unterstützt das schnellere binäre Formatierer - Sie müssen es nur auswählen

Quelle: Faktoiden über HTTP- und TCP -Remotungskanäle

TCP ist schneller, da es sich um ein schnelleres Protokoll handelt.

TCP ist ein Protokoll mit niedrigerer Ebene, das eine sichere zuverlässige Verbindung herstellen kann. HTTP ist einfacher zu verwenden, da Sie ihn von Ihrem Browser an einen Webserver senden können.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top