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

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

SOA e Web Services Aluno: Thiago Caproni Tavares Orientador: Prof. Dr. Marcos José Santana Seminários – Disciplina de Sistemas Distribuídos 22 de Novembro.

Apresentações semelhantes


Apresentação em tema: "SOA e Web Services Aluno: Thiago Caproni Tavares Orientador: Prof. Dr. Marcos José Santana Seminários – Disciplina de Sistemas Distribuídos 22 de Novembro."— Transcrição da apresentação:

1 SOA e Web Services Aluno: Thiago Caproni Tavares Orientador: Prof. Dr. Marcos José Santana Seminários – Disciplina de Sistemas Distribuídos 22 de Novembro de 2007

2 Agenda Introdução Arquitetura Orientada a Serviço Web Services – Por que utilizar? – Visão dos web services – Arquitetura – Camada Física – Camada de Descrição – Camada de Descoberta Objetos Distribuídos e Web Services

3 Introdução A Internet mudou a maneira de se fazer negócios Facilidade para o acesso as aplicações HTML e HTTP -> Padrão de troca de informação Navegadores Web – Tornaram a comunicação simples e possível

4 Introdução Problema – Diferentes empresas utilizam diferentes tecnologias e soluções – Como realizar integração de maneira automatizada? – Muitas vezes é necessário reimplementar as soluções

5 Arquitetura Orientada a Serviço Forma de reorganização de aplicações – Infra-estrutura de um conjunto de serviços – Acessados através de interfaces padronizadas de protocolos de mensagens Quando utilizar? – Quando múltiplas aplicações precisam se comunicar sobre uma variedade de tecnologias e plataformas

6 Arquitetura Orientada a Serviço

7 Base da Arquitetura – Agentes de softwares que se interagem por troca de mensagens Clientes são agentes que requisitam a execução de um serviço Provedores são agentes que fornecem o serviço Ambos podem ser clientes e provedores

8 Arquitetura Orientada a Serviço Provedores são responsáveis pela publicação e descrição do serviço Clientes devem estar aptos a encontrar essas descrições e acessá-los Três tipos de participante fazem parte da SOA: – O Provedor do Serviço – O Serviço de Descoberta – Cliente do Serviço

9 Arquitetura Orientada a Serviço Service Provider Service RegistryService Client Publish Find Bind

10 Arquitetura Orientada a Serviço Um serviço possui uma interface e uma implementação – Função de negócio implementada em software – Encapsulada com uma interface documentada formalmente (Encapsulamento de caixa-preta) – Modularidade A interface é uma descrição do conjunto de operações que estão disponíveis para o cliente

11 Arquitetura Orientada a Serviço Resumidamente: – A SOA é a base dos web services – Reorganiza as funcionalidades de uma aplicação através de serviços – Suas principais características são: Neutralidade de Tecnologia Acoplamento fraco Transparência de localização

12 Web Services Tecnologia para computação distribuída baseada na web Mecanismo popular na implementação de SOAs Tem ganhado uma rápida adoção e suporte de empresas:

13 Web Services Podem ser vistos como um componente de software onde os detalhes da implementação são escondidos atrás de uma interface. Apache Axis e Java2WSDL – Ferramentas que obtém interfaces a partir de sistemas orientados a objetos já existentes

14 Por que Utilizar Web Services Interoperabilidade – Independência de hardware, sistemas operacionais e linguagens de programação Padrões são abertos Uso de XML (Troca de documentos) Integração B2B

15 Por que Utilizar Web Services Enterprise Application Integration (EAI)

16 Por que Utilizar Web Services Protocolos Envolvidos – HTTP – XML – SOAP – WSDL – UDDI

17 Visão dos Web Services Combinação – Operações podem ser combinadas entre diversos WSs fornecendo uma única funcionalidade

18 Visão dos Web Services Padrões de Comunicação – Síncrona, assíncrona ou por eventos Cliente ProvedorClienteProvedor ΔtΔt ΔtΔt Cliente Evento SíncronaAssíncronaEvento

19 Visão dos Web Services Modelo de programação não particular – Ambiente web possui uma infinidade de linguagens de programação – Paradigma de programação dos WSs são independentes de qualquer outro paradigma

20 Visão dos Web Services Representação de mensagens – Representação do SOAP e dos dados são feitas através de XML – Maior ocupação de espaço com relação ao formato binário – Maior custo de processamento – Legível para seres humanos e de fácil depuração

21 Visão dos Web Services Referências de Serviços – Cada serviço na web tem um URI (Uniform Resource Indentifier) – O URL (Uniform Resource Locator) é a forma mais comum de URI – Frequentemente os domínios são mudados – Necessidade de um URN (Uniform Resource Names)

22 Visão dos Web Services Transparência – Clientes e provedores lêem e gravam suas mensagens diretamente em envelopes SOAP utilizando XML – Linguagens de programação com Java, Perl, Phyton ou C++ oferecem APIs (Application Programming Interface) – Geração automática dos procedimentos de empacotamento

23 Arquitetura dos Web Services Composta por pelo menos três camadas: – Camada Física – Camada de Descrição – Camada de Descoberta

24

25 Web Services – Camada Física Camada física – Camada mais baixa onde está a base de todo o desenvolvimento dos web services – Sintaxe de roteamento das mensagens – Suporte a transações simples – Assinatura digital – Criptografia – Qualidade de serviço – Protocolos propostos para essa camada: XML- RPC e SOAP

26 Web Services – Camada Física XML-RPC – Utilizado por serviços mais leves – Cada requisição é enviada como uma mensagem HTTP-POST e as respostas são recebidas através de uma mensagem HTTP 200 – Todas mensagens possuem cabeçalhos HTTP

27 Web Services – Camada Física SOAP (Simple Object Access Protocol) – Assim como o XML-RPC, o SOAP é um protocolo de troca de informações para dados tipados – Versão 1.1 foi desvinculada do HTTP, diferentemente do XML-RPC – Possibilidade da utilização de protocolos como SMTP, POP3, FTP e etc. – A especificação é composta por três partes: um envelope, um conjunto de regras de codificação e uma convenção RPC

28

29 Web Services – Camada de Descrição Contém a semântica formal para descrever as mensagens que os WSs podem entender Descreve as restrições de dados dentro das mensagens, as ontologias e a maneira com que os WSs podem ser combinados Os tipos de dados são expressadas por um XML Schema As semânticas são expressadas pela Web Service Description Language (WSDL)

30 Web Services – Camada de Descrição XML Schema – É uma alternativa aos DTD`s (Document Type Definition) – define os elementos e os atributos que podem aparecer em um documento. – define quais elementos são elementos filhos. – define a ordem e o número dos elementos filhos. – define se um elemento é vazio ou pode conter texto. – define os tipos que podem ser atribuídos a elementos e atributos. – define padrões e valores fixos a elementos e atributos.

31 Web Services – Camada de Descrição WSDL – Análoga a um interface Java ou a linguagem de definição de interface do CORBA (IDL) – Fornece um mecanismo capaz de descrever as comunicações de um modo estruturado – Serviços como coleções de endpoints – Alguns Elementos: Types Message Operation Etc...

32

33 Web Services – Camada de Descoberta Oferece processos e mecanismos pelos quais os web services podem ser encontrados Diretório de serviço onde os web services podem ser registrados e encontrados (W3C) O UDDI (Universal Description Discovery and Integration) provê as interfaces de serviços descritas em um documento WSDL

34 Web Services – Modelo Geral Service Provider Service RegistryService Client Busca WSDL SOAP WSDL

35 Objetos Distribuídos e Web Services CORBA e RMI – Objetos remotos Em WSs não existe o conceito de referências a objetos – Serviço definido por um endpoint que suporta várias operações Em termos de objetos distribuídos, os WS possuem um caráter singleton (stateless) RMI e CORBA foram projetados para uso dentro de uma organização ou entre um pequeno número de organizações

36 Objetos Distribuídos e Web Services WS possui computação orientada a documentos (XML) – Diferentemente de uma requisição a uma instância de um objeto Objetos distribuídos permitem o acesso ao mesmo estado repetidamente CORBA – Interoperable Object Reference – Cliente e Servidor devem possuir o mesmo repositório de interfaces

37 Objetos Distribuídos e Web Services Principais diferenças – Não incluem noções de objetos – Referências de objetos – Ciclos de vida – Comunicação através de encapsulamento de documentos XML

38 Objetos Distribuídos e Web Services Objetos distribuídos – Tecnologia robusta e madura – Restrição ao ambiente em que eles foram projetados (ex. uma intranet corporativa) – Homegeneidade e latência conhecida Web Services – Computação distribuída sobre a internet – Interoperabilidade – Heterogeneidade de plataformas e redes

39 OBRIGADO!!!


Carregar ppt "SOA e Web Services Aluno: Thiago Caproni Tavares Orientador: Prof. Dr. Marcos José Santana Seminários – Disciplina de Sistemas Distribuídos 22 de Novembro."

Apresentações semelhantes


Anúncios Google