Fundamentos de WCF – Parte III – Os Bindings
3.1 – A Composição de Bindings
3.2 – Para cada Cenário de Utilização existe um tipo de Binding Específico que melhor atende as necessidades associadas a esse cenário.
3.3 – Tipos de Binding
BasicHttpBinding
HTTP + Text/MTOM Encoding + Transport Security (https)
Primeira escolha para integração com SOAP e HTTP.
WS Basic Profile 1.1 compliant
WsHttpBinding / WsDualHttpBinding
BasicHttpBinding features + Segurança no nível da Mensagem + Reliable Session + Transaction Flow
WsDualHttpBinding: Conversações Bidirecionais Duplex
Primeira escolha para cenários avançados com Web Services, Federated Security, Reliable Delivery, Transaction Integration
NetTcpBinding
WCF Framing Protocol + Binary Encoding
Transport/Message Security, Reliable Session, Transactions
Bidirectional (Duplex) no mesmo socket
Deve ser escolhido em relação ao WsHttpBinding em:
Cenários WCF-a-WCF sensíveis à Largura de Banda/Desempenho
Notificações/feedback instantâneos ao Cliente com NAT/Firewall
NetNamedPipeBinding
Mesmas features do NetTcpBinding com confiabilidade garantida pelo Windows
Preferir em relação ao NetTcpBinding quando for necessário um desempenho máximo na comunicação entre máquinas ou in-process.
NetMsmqBinding
Transporte MSMQ + Binary Encoding
Segurança nos níveis de Transporte/Mensagem, Transações
Deve ser a primeira escolha quando necessário: Reliable, Durable, Queued One-Way Messaging. Ou em cenários de grandes débitos de mensagens para o serviço.
MsmqIntegrationBinding
Transporte do MSMQ + MSMQ Encodings
Segurança do MSMQ, Transações
Primeira escolha cenários de Integração com aplicações MSMQ existentes e em situações de integração simples com o Host Integration Server e o BizTalk.
webHttpBinding
“web-friendly” WCF Binding no .NET 3.5
Permite a construção de serviços ”RESTful”
Suporta transporte HTTP e HTTPS somente
Não utiliza envelopes SOAP
WebMessageEncoding JSON, XML, Binary
Novos bindings estão disponíveis com o .NET 3.5 SP1, considerando integração com WF, sessões, recuperação, etc.
