1. Big Web Services
Luiz Fernando Machado Silva
Marco Aurélio Galvão
Sistemas Distríbuidos
Prof. Dr. Arlindo Flávio da Conceição
UNIVERSIDADE FEDERAL DE SÃO PAULO
2. • Arquitetura orientada à serviços
• Funcionalidades disponibilizadas como serviços em
interfaces acessíveis na web (ex: web services)
• Conjunto de políticas bem definidas para encontrar,
definir e gerenciar serviços
• Comunicação entre clientes e serviços segue o
paradigma de request / reply
O que é SOA?
3. • Solução utilizada na integração de sistemas e
comunicação entre aplicações diferentes
• Envio e recebimento de mensagens em formatos
determinados, como XML ou JSON
• Interoperabilidade: possibilita comunicação entre
sistemas desenvolvidos em plataformas diferentes
O que é Web Service?
4. • Termo que define web services de grande porte
• Implementa multíplos padrões de WS-* para prover,
principalmente, interoperabilidade entre os serviços
• SOAP (Simple Object Access Protocol) é usado como
protocolo padrão de formatação de mensagens
• WSDL (Web Services Description Language) é o
documento utilizado para descrever o serviço, como é
feito o acesso e quais funcionalidades estão disponíveis
O que é Big WS?
5. • WS-* é o termo usado para descrever o grande conjunto
de especificações Big WS
O que é WS-*?
WS-Notification
WS-Addressing
WS-Transfer
WS-Eventing
WS-Enumeration
WS-Policy
WS-Discovery
WS-Metadata Exchange
WS-Resource Framework
WS-Security
WS-Trust
WS-Federation
WS-Reliability
WS-Transfer
WS-AtomicTransaction
WS-Coordination
WS-CAF
WS-Transaction
WS-Context
WS-CF
WS-Management
6. • Protocolo para troca de informações estruturadas entre
plataformas descentralizada e distribuída
• Modelo simplificado de comunicação que independe de
linguagem, sistema operacional ou meio de transporte
• Baseado em XML e estruturado em camadas que
definem o que está na mensagem, como interpretar os
tipos de dados descritos e como lidar com erros
• É considerada uma alternativa ao padrão REST
O que é SOAP?
7. O que é SOAP?
POST /InStock HTTP/1.1
Host: www.example.org
Content-Type: application/soap+xml; charset=utf-8
Content-Length: 299
SOAPAction: "http://www.w3.org/2003/05/soap-envelope"
<?xml version="1.0"?><soap:Envelope
xmlns:soap="http://www.w3.org/2003/05/soap-envelope">
<soap:Header>
</soap:Header>
<soap:Body>
<m:GetStockPrice xmlns:m="http://www.example.org/stock">
<m:StockName>IBM</m:StockName>
</m:GetStockPrice>
</soap:Body></soap:Envelope>
8. • Rígido. Segue fielmente o seu descritor WSDL
• Bem documentado. Possui tópicos exclusivos para
segurança, autenticação, troca de mensagens, etc.
• Conta com diversas ferramentas, tanto livres quanto
pagas, para auxiliar o desenvolvimento
Vantagens do Big WS
9. • Implementar e seguir todas as especificações do Big WS
pode ser trabalhoso.
• Desperdício de banda. Transmissão de mensagens
SOAP são mais custosas em relação a CSV ou JSON.
• Pouco utilizado na web devido a complexidade de
implementação.
Desvantagens do Big WS
10. • REST: Grande parte da Web
• Big WS (SOAP): Sistemas empresariais
• Ambos: eBay, Amazon
Quem usa o que?
11. • Big WS do eBay: GeteBayOfficialTime
Um caso de uso
13. • Google foi uma das primeiras grandes empresas a
adotar o padrão SOAP na Google SOAP Search API
• Em 2006, a empresa anunciou o fim do suporte a API e
em 2009, o serviço foi finalmente desligado
Um caso de desuso