Question

Je suis nouveau à .NET Remoting et pas très familier avec les différents canaux de communication qui peuvent être utilisés. Je sais qu'il ya HttpChannel et TcpChannel hors de la boîte. Je comprends que l'on est Http tandis que l'autre est Tcp, mais je ne comprends pas pourquoi Tcp est plus rapide.

Était-ce utile?

La solution

La raison Tcp est plus rapide, est qu'il utilise binaire comme un moyen de transmission de données à travers le fil, avec TcpChannel, vous pouvez utiliser un numéro de port supérieur à 1024 (les 1024 premiers ports sont réservés). Alors qu'avec HttpChannel, il utilise le port 80, le port standard partagé avec votre navigateur web, le HttpChannel est utilisé si vous voulez rendre flexible avec d'autres services. De plus, les données transmises par l'HttpChannel sont codées dans le texte, ce qui le rend plus lent, par exemple, si vous deviez récupérer une image, cette image aurait à coder d'abord en format de données base64 et transférées à travers.

En général, si vous voulez la vitesse, optez pour TcpChannel, si vous voulez la flexibilité, allez HttpChannel.

Hope this helps, Meilleures salutations, Tom.

Autres conseils

Le canal HTTP doit créer un en-tête énorme (relativement parlant) et analyser les réponses complexes. Le canal TCP sur l'utilise un protocole binaire efficace avec des frais généraux beaucoup moins par demande.

  

TCP est légèrement plus rapide que HTTP; par défaut HTTP à l'aide de la plus lente formatter Soap et TCP par défaut à l'aide de la formatter plus rapide binaire; HTTP prend en charge la plus rapide binaire formatter - il vous suffit de le sélectionner

Source: Factoids sur les canaux HTTP et TCP Remoting

Tcp est plus rapide car il est un protocole plus rapide.

Tcp est un protocole de niveau inférieur qui peut établir une connexion sécurisée et fiable. Http est plus facile à utiliser que vous pouvez l'envoyer à un serveur web à partir de votre navigateur.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top