Your SlideShare is downloading. ×
Web Services
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Web Services

484
views

Published on

Apresentação realizada para a disciplina Sistemas Distribuídos do curso Bacharelado em Sistemas de Informação, Campus IV UFPB

Apresentação realizada para a disciplina Sistemas Distribuídos do curso Bacharelado em Sistemas de Informação, Campus IV UFPB

Published in: Technology

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
484
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
26
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Web ServicesPaulo Neto, Kawe Ramon
  • 2. Web ServicesMotivação.• Integração entre serviços distintos.• Padronização no retorno de cada requisição de serviços.(WSDL)• Independência de tecnologia de desenvolvimento e plataformas.
  • 3. Web ServicesMotivação• Os Web Services estão acima de plataformas, bancos de dados, e linguagens de programação, livrando completamente os desenvolvedores das limitações previamente encontradas na interface entre aplicativos.
  • 4. Web ServicesO Que é um Web Service? Segundo a W3C(World Wide Web Consortium),podemos defini-lo como: um sistema de software projetado para suportar a interoperabilidade entre máquinas sobre rede. Um serviço web é um serviço que está publicado na web e disponível para qualquer pessoa/sistema possa interagir com ele.
  • 5. Web ServicesIntegração e Reuso• Web Services permitem o compartilhamento de Dados entre sistemas distintos (implementações diferentes).• Antes dos Web Services já existia interação entre aplicações, a vantagem de se utilizar WS é o Reuso.
  • 6. Web ServicesDescritores de Serviço• WSDL - Web Services Description Language. Linguagem baseada em XML recomendada peloW3C que tem por objetivo descrever web services através dos métodos de requisição HTTP, passagem de valores e formas de retorno.
  • 7. Web ServicesPáginas Amarelas de Serviços• Universal Description, Discovery and Integration (UDDI) O UDDI atua como um diretório de arquivos descritores de serviços.
  • 8. Web Services Implementação• A implementação de web services promoveu não só mudanças na interação entre sistemas, mas na própria arquitetura de tais sistemas; SOA (Arquitetura orientada a Serviço) é a prova concreta disso.• SOAP: Protocolo especificado para a troca de mensagens baseadas em XML em redes TCP/IP. SOAP é um acrônimo de Simple Object Access Protocol e é fundamentalmente usado por web services, para a transmissão de mensagens e requisição remota de processos.
  • 9. Web Services Implementação• É importante saber que as idéias fundamentais que construíram os web services provêm de tecnologias e produtos anteriores, entre eles estão CORBA, DCOM e RPC/RMI. Além dessas iniciativas prévias, existem iniciativas atuais que também possibilitam o uso de serviços pela Internet com eficiência. A principal dessas iniciativas é denominada REST (Representational State Transfer).
  • 10. Arquitetura REST• REST é uma abreviação de Representation State Transfer, ou traduzindo, Transferência de Estado Representacional• Principais características arquiteturais incorporadas:• Separação de responsabilidade entre as camadas cliente servidor• Comunicações independentes (stateless)• Uso de cache (para eliminar algumas interações desnecessárias entre cliente e servidor)• Utilização de uma interface uniforme entre os componentes
  • 11. Arquitetura REST• Essas características quando aplicadas à um web service melhora o desempenho do sistema em geral• Se comparar com o protocolo SOAP, diminui o tempo de resposta das aplicações e seu uso gera uma maior flexibilidade e simplicidade• REST é composto por um conjunto de elementos arquiteturais, as três classes de elementos: Elementos de Dados, Conectores e Componentes
  • 12. REST - Elementos de Dados• São os elementos que contém a informação a ser usada e transformada• Recursos: Conceito-chave da arquitetura REST, é qualquer informação que possa receber um nome• Identificadores: Identifica um recurso específico envolvido em uma interação entre clientes e servidores. REST usa o URI (Unified Resourse Identifier) como identificador de recursos• Representações: São usadas para capturar o estado atual e o estado desejado de um recurso solicitado. Na prática são sequências de bytes acrescidas de meta-dados
  • 13. REST - Componentes• São elementos que usam ou transformam a informação, são caracterizados de acordo com o papel que exercem• Servidor de Origem (trata de requisições de um cliente)• Proxy e Gateway, utilizados para permitir o encaminhamento das requisições e respostas.• Agente do usuário, inicia a requisição e, logo em seguida, se torna o destino final de uma resposta
  • 14. REST - Conectores• São elementos que interligam outros elementos. Rest usa conectores para encapsular a atividade de acesso aos recursos e para transferir as suas representações• Cliente e Servidor, são responsáveis pelo acesso aos recursos• Cache, armazena as respostas passíveis de cache• Resolver é responsável pela conversão de um URI em um endereço de rede• Túnel cria um caminho virtual para o tráfego dos recursos
  • 15. REST - Métodos Nativos HTTP• Para padronizar o formato das representações de um recurso, REST utiliza uma interface uniforme de componentes que é aplicada através da utilização dos métodos nativos do protocolo HTTP• Principais métodos HTTP utilizados em aplicações RESTFul:
  • 16. JSON (JavaScript Object Notation)• Modelo para armazenamento e transmissão de informações no formato texto• Tem a capacidade de estruturar informações de uma forma bem mais compacta do que XML, tornando mais rápido o parsing dessas informações• É um formato texto e completamente independente de linguagem, pois usa convenções que são familiares às linguagens C e familiares.• Dividido em duas estruturas:• Uma coleção de pares nome/valor• Lista ordenada de valores: array
  • 17. JSON• Um Objeto com estrutura complexa possui arrays, hierarquias e Informações opcionais• Fornece a capacidade de atribuir métodos de execução (funções) que estarão diretamente ligadas ao objeto criado.• Sua forma de aplicação assemelha-se a um objeto abstraído do mundo real o qual trabalhamos em POO
  • 18. JSON x XML• Vantagens o Leitura mais simples o Analisador (parsing) mais fácil o Suporta objetos o Velocidade maior na execução e transporte de dados o Arquivo com tamanho reduzido• Desvantagens o As informações representadas em JSON não podem ser validadas por um esquema, Já em XML, é possível validar através por DTD e XML Schema
  • 19. JSON x XML - SintaxeSintaxe XML: <?xml version="1.0" encoding="UTF-8"?> <id>1id> <nome>Alexandre Gamanome> <endereco>R. Qualquerendereco>Sintaxe JSON:{"id":1,"nome":"Alexandre Gama", "endereco":"R.Qualquer"}