Conteúdo:


Definição

Um Web Service é um serviço de aplicação que pode ser acessado usando os~protocolos padrão da Web, como por exemplo http, https, etc. web Services podem ser aplicados a qualquer tipo de plataforma de integração e suportam tanto aplicações ponto-a-ponto quanto aplicações distribuídas.

"Web Services" é o conjunto de padrões que asseguram interoperabilidade entre serviços especialmente quando esses serviços devem se comunicar utilizando os protocolos da Web.

Alguns dos conceitos principais de Web Services são:

Hoje em dia, a maioria dos serviços integrados à Web são feitos a partir de um grupo de tecnologias incluindo:

Uma plataforma para Web Services é um conjunto de produtos que implementam essa tecnologia. Ao montar uma plataforma para o serviço, deve-se ter em mente um conjunto de fatores, incluindo: linguagem e plataforma seguras, performance e escalabilidade do sistema, facilidade de uso. Existem muitas plataformas comerciais disponíveis no mercado que fornecem suporte para Web Services.

Ou seja, um Web Service é um serviço disponível na Web acessível através de uma URI (Uniform Resource Identifier) e de protocolos da Web com HTTP, HTTPS e outros. Esse serviço obedece a um "contrato" entre o cliente e o servidor do serviço que descreve como a interface entre os dois deve ser implementada.


Arquitetura Orientada a Serviços (SOA)

O conceito de serviço explicado na seção anterior é a chave para se entender Web Services. Todo serviço para Web deve estar de acordo com o padrão SOA demonstrado na figura abaixo.

Os três papeis básicos presentes em uma plataforma para Web Services são:

Funcionalmente, pode-se dividir uma plataforma SOA em três componentes básicos:

A especificação técnica da arquitetura SOA ficaria como a mostrada abaixo:


Um Pouco de História

Apesar do conceito de Web Services ser um conceito novo, a idéia não é e existe já a algum tempo. Alguns exemplos de sistemas que implementam SOA são Java RMI (Java Remote Method Invocation), CORBA (Common Object Request Broker Architecture),  DCE (Distributing Computing Environment) e DCOM (Distributed Component Object Model).

Não está compreendido no escopo deste documento descrever o funcionamento de cada uma dessas arquitetura, porém, cada uma delas implementa seu próprio grupo de funcionalidades para cada um dos componentes da arquitetura SOA.

A tabela abaixo compara os protocolos utilizados em cada uma dessas arquiteturas com os protocolos utilizados em Web Services.