O que são webservices? Protocolo SOAP

0 Flares Twitter 0 Facebook 0 Filament.io Made with Flare More Info'> 0 Flares ×

Webservices é um termo utilizado para designar a tecnologia que integra diferentes sistemas, especialmente em ambientes heterogêneos, bastando para isto que exista uma comunicação baseada no formato XML.

Os webservices são uma necessidade do mundo atual, em que a internet permitiu a integração entre diversas empresas ao redor do mundo, utilizando softwares diferentes, plataformas diferentes, mas tendo um condutor comum: a internet. Por isto, a adoção do formato XML, altamente flexível, permite que diferentes aplicações consigam “conversar” entre si, desde que obedecidos certos padrões de comunicação. 

Um webservice assemelha-se a um método, no seu funcionamento. Você envia certas informações, que são os parâmetros, o webservice faz o processamento, e devolve o resultado. Um exemplo de webservice seria, por exemplo, uma imobiliária que coloca vários imóveis à venda. Ao entrar em detalhes de um imóvel, poderia haver uma pequena caixa em que o cliente informa o valor da entrada que pretende dar, e o sistema se encarrregaria, via webservice, de simular o financiamento entre diferentes bancos, devolvendo todos os resultados, o melhor resultado, ou o banco indicado pelo cliente, por exemplo. Tudo isto de maneira independente da plataforma em que o site da imobiliária foi construído, bem como o sistema de cada um dos bancos.

Os padrões de desenvolvimento existentes para a criação de webservices são o SOAP e o REST (também conhecido como RESTfull).

SOAP (sigla de Simple Object Access Protocolo) baseia-se num protocolo que “envelopa” o conteúdo associado a WSDL, que é uma linguagem que descreve os serviços oferecidos. O diagrama abaixo demonstra o funcionamento do protocolo SOAP.

SOAP Esquema

Esquema de funcionamento do protocolo SOAP

Um webservice é basicamente composto pelo protocolo SOAP, que é o protocolo adotado para transmissão de dados proposta pelo W3C. Sua estrutura é baseada em XML e funciona com o modelo Request/Response do protocolo HTTP.

WSDL (Web Services Description Language): arquivo XML que descreve o web service. Especifica as funções disponíveis, bem como os formatos de entrada e saída de dados. Pode ficar armazenada tanto no provedor de web services como no UDDI.

UDDI (Universal Description, Discovery and Integration: é um servidor intermediário, que se comunica tanto com o provedor de serviços como o cliente. É ele o responsável por tornar possível a descoberta de provedores de web services pelos clientes, além de armazenarem arquivos WSDL.

Os próximos posts detalharão melhor o funcionamento de web services baseados em SOAP, bem como discutirá um dos problemas desta arquitetura, que é a perda de desempenho em função da abstração do protocolo HTTP. É para isto que foi criada a arquitetura REST, que trabalha baseada apenas em XML e HTTP, que são recursos comuns da web. Não perca as próximas postagens!

Fontes:

Tags: , , , , ,

Leave a Reply