A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Sistemas Distribuídos Web Services Silvia Cristina Sardela Bianchi.

Apresentações semelhantes


Apresentação em tema: "Sistemas Distribuídos Web Services Silvia Cristina Sardela Bianchi."— Transcrição da apresentação:

1 Sistemas Distribuídos Web Services Silvia Cristina Sardela Bianchi

2 Cenário Considere uma agência de viagens que quando vai vender um pacote precisa analisar: o Empresas aéreas: Determinar a melhor opção entre os horários e preços dos vôos; o Hotéis: Melhores condições e preços; Atualmente a negociação com o cliente é feita de forma manual. Ou seja, o cliente vai até à agência, informa o local de destino, a data de partida e retorno e o padrão de hotel e a classe de vôo desejados;

3 Cenário Com a finalidade de propiciar uma maior comodidade aos clientes e agilizar o atendimento a agência deseja automatizar esse processo; É desejado que o site da agência possua recursos de forma que o cliente informe os dados e valor da viagem seja calculado; Como esse processo pode ser automatizado?

4 Cenário As empresas aéreas precisam disponibilizar formas para as agências consultarem suas tabelas de vôos e preços, Os hotéis precisam disponibilizar formas para as agências consultarem suas tabelas de preços e reservas; O sistema da agência precisa acessar os dados dos hotéis e das empresas aéreas para analisar a melhor condição e oferece-lá ao cliente;

5 Cenário Diferentes hotéis e empresas aéreas possuem diferentes estruturas de informática; Cada hotel e empresa aérea pode disponibilizar seus dados utilizando uma tecnologia e forma de acesso diferentes; Essa heterogeneidade complica o desenvolvimento da solução; A agência precisa saber quais as empresas aéreas e hotéis que oferecem tal recurso, de forma que ela possa incluí-los na consulta; Qual a solução para isso?

6 Motivação Mitigação para problemas de integração o Dados, plataformas,etc. Simplificação da comunicação entre aplicações o Menores custos de desenvolvimento, manutenção, implantação, etc. Eliminação do forte acoplamento das tecnologias RPC-style o RPC, CORBA, RMI, e DCOM o Flexibilidade e adaptabilidade Reuso para outras aplicações o Heterogeneidade 6

7 Motivação Garantir inter-operabilidade o Usar protocolos web (HTTP e HTTPS) para transporte o Usar URLs e URIs como referências para serviços remotos o Tratar problemas de heterogeneidade dos dados usando XML para representar os dados 7

8 Exemplo: Aplicação 3 camadas Data Layer Presentation Layer Business Layer Aplicação Central Compras boa arquitectura DNA Interface da aplicação dá acesso aos dados aplicacionais

9 Service Oriented Architecture Data Layer Presentation Layer Business Layer Serviço Central Compras Service Façade UI boa arquitectura 3-tier service troca de mensagens Dados e Lógica Negócio encapsulados por uma Web Service Façade Interface desacoplado da lógica de processamento dos dados Web Service Standards permitem ligações cross-platform

10 Automação de Processos de Negócio Serviço Central Compras UI Processo Compras Serviço RH Serviços Contabilidade Business Process Automation Múltiplos serviços combinados num único processo de negócio integração com diferentes plataformas

11 O que é? – Definição [1/2] De forma extremamente simplista... o Um site sem GUI o Imagine poder usar o engenho de busca do Google mas poder definir sua própria GUI o Estabelecimento de um contrato de serviço para o cliente: Requisição => tratamento de resultados

12 O que é? – Definição [2/2]... formalizando: conjuntos de protocolos e padrões que permitem que aplicações se comuniquem via uma rede (geralmente Internet). Esta comunicação baseada em padrões permite que as aplicações descrevam o que fazem e permite então chamar ou utilizar os serviços de outra aplicação.

13 Web Services Implementam serviços que precisam ser compartilhados; Podem ser desenvolvidos em qualquer plataforma utilizando qualquer ambiente de desenvolvimento; Devem ser capazes de comunicar com outros Web Services utilizando protocolos padrões; No cenário proposto (no início da apresentação) os hotéis e as empresas aéreas podem disponibilizar Web Services com operações para consulta de preços e condições;

14 Web Services O sistema da agência invocaria o Web Service oferecido pelo hotel ou empresa aérea, efetuando a consulta desejada; Middleware baseado em três padrões: o Simple Object Access Protocol (SOAP); o Web Services Description Language (WSDL); o UDDI (Universal Description, Discovery and Integration);

15 Web Services: Arquitetura Camada de Transporte o HTTP; o SMTP; o Etc; Camada de Mensagens: o SOAP; Camada de Dados: o XML (RPC Style, Document Style); Camada de descrição: o WSDL; Camada de descoberta: o UDDI;

16 Web Services: Papéis Provedor de Serviços: Disponibiliza um serviço Web para que esse possa ser invocado por um outro software; Registro de Serviços: Repositório que mantém e fornece informações sobre Web Services; Cliente de Serviços: Aplicação que localiza um serviço, implementa sua interface e invoca o serviço;

17 Web Services 17

18 SOAP 18 Protocolo para trocar mensagens XML o Inclui definição do formato das mensagens a trocar o Inclui um mecanismo de ligação das mensagens SOAP com o protocolo de transporte usado: HTTP ou HTTPS (ou SMTP, …) o Inclui mecanismo para tratar falhas

19 SOAP 19 No SOAP toda a informação está incluída no envelope da mensagem O envelope inclui elementos de cabeçalho e de corpo

20 20

21 SOAP 21 Oneway: mensagem undirecional do cliente para o servidor Pedido-resposta: interação cliente-servidor-cliente Notificação: interação unidirecional servidor- cliente o E.g. callback, notificação Notificação-resposta: interação servidor-cliente- servidor

22 WSDL: IDL para WS 22 Definição da interface em XML o WSDL permite definir a interface do serviço, indicando quais as operações disponíveis o WSDL define as mensagens trocadas na interação (e.g. na invocação de uma operação, quais as mensagens trocadas) o WSDL permite também definir a forma de representação dos dados e a forma de aceder ao serviço Especificação WSDL bastante verbosa – normalmente criada a partir de interface ou código do servidor Em Java e.NET existem ferramentas para criar especificação a partir de interfaces Java Sistemas de desenvolvimento possuem wizards que simplificam tarefa

23 23

24 WSDL 24 Parte Abstrata Parte Concreta

25 UDDI Os clientes precisam de uma forma para encontrar Web Services que atendem a uma determinada necessidade; Exemplo: o A agência de turismo precisa descobrir quais hotéis oferecem consultas através de Web Services; É necessário obter informações sobre o serviço oferecido; UDDI (Universal Description, Discovery and Integration) oferece a solução para tais questões;

26 UDDI: Informações Páginas brancas: o Busca de organizações pelo nome; o Informações sobre contato ( , telefone, etc); o Informações sobre os serviços oferecidos Páginas amarelas: o Busca de organizações ou serviços por categoria; o Categorias poder ser padronizadas ou definidas pelo usuário; Páginas verdes: o Busca de serviços com base em características técnicas;


Carregar ppt "Sistemas Distribuídos Web Services Silvia Cristina Sardela Bianchi."

Apresentações semelhantes


Anúncios Google