I'm new to WCF and would like to know the differences/advantages/limitations/etc of each of the following bindings:
net.pipe net.tcp http
Supporting scenarios on when to use each binding and other examples would be appreciated.
A named pipe has a name, and can be used for one-way or duplex communication between processes on a single machine. Named Pipes in Windows can be used to communicate between processes on the same machine or between different machines across a network.
The NetTcpBinding generates a run-time communication stack by default, which uses transport security, TCP for message delivery, and a binary message encoding. This binding is an appropriate Windows Communication Foundation (WCF) system-provided choice for communicating over an Intranet.
The WCF TCP transport is optimized for the scenario where both ends of the communication are using WCF. This binding is the fastest WCF binding for scenarios that involve communicating between different machines.
Protocols − WCF supports a range of protocols, i.e., HTTP, Named Pipes, TCP, and MSMQ, whereas a web service only supports HTTP protocol.
While not great for providing specific usage examples, here is a link from MSDN which lists all the features for the bindings.
http://msdn.microsoft.com/en-us/library/ms730879.aspx
Here is a decent flow chart that can help choosing between them as well.
Source: http://bloggingabout.net/blogs/dennis/archive/2006/12/01/WCF-Binding-decision-chart.aspx
Here is a good overall article I've used in the past.
http://mkdot.net/blogs/dejan/archive/2008/03/31/wcf-binding-decision.aspx (or here in the wayback machine if the link no longer works for you).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With