Ernesto 的个人资料Ernesto Janebro 日志列表留言簿更多 工具 帮助

日志


1月23日

Windows Communication Foundation

O Windows Communication Foundation ou WCF é a mais recente tecnologia criada pela Microsoft ( a partir do .NET 3.0 ) para comunicação distribuída de dados.

Primeiramente, saiba que o WCF é a fusão de várias tecnologias de comunicação distribuída de dados bem sucedidas, ou seja, não existe nada de errado com Web Service, .NET Remoting, Microsoft Message Queue, exceto o fato de não serem integradas.

O principal objetivo do WCF é permitir que o mesmo Serviço possa estar disponível simultaneamente em vários modelos de comunicação (i.e. a integração que faltava). Imagine um Serviço que possa ser acessado via Http(s), Tcp, NetPipe, P2P, .Net Remoting e qualquer outra coisa que você possa imaginar sem recodificar nada, simplemente especificando via arquivo de configuração os protocolos desejados.

Antes que você diga que isso não é possível, vamos analisar os conceitos básicos do WCF, ou melhor, o ABC do WCF. Este ABC é o que a Microsoft definiu como Address, Binding e Contract, ou melhor, Endereço, Protocolo e Contrato. Assim, vamos analisar cada um dos três itens : 

Address (Where): É o endereço ou URI (Universal Resource Identifier - Identificador Universal de Recurso ) que especifica a localização do serviço. Algo como “/mutex/blogs/fotos". 

Binding (How): É o protocolo que será usado para permitir a comunicação. Podendo ser Tcp, Http, Netpipe, p2p, dentre outros. Você pode até criar o seu ! 

Contract (What): É o serviço disponível, ou melhor, são os metódos que podem ser acessados remotamente. É definido obrigatoriamente via programação e através de Interface.

O processo consiste em três etapas independentes : Definir, Especificar e Disponibilizar.

O ABC permite que tenhamos um serviço com vários contratos (endpoint), um contrato em vários serviços (service) e serviços com endereços diferentes (address).Conclusão : Se você precisa de um framework  para comunicação distribuída a melhor opção e mais recomendada é o WCF