c1324b1cca6ac5ccd2c8f4372de90825.ppt
- Количество слайдов: 19
Web Services aplicado à Computação em Grade Disciplina Engenharia de Redes Professor: Dr. Michael Stanton Aluno: Marcio Belo Dezembro de 2003
Roteiro • Introdução • Web Services – XML, SOAP, WSDL, UDDI • • Computação em Grade OGSA Uso de Web Services no OGSA Conclusão
Introdução • Web Services: tecnologia emergente para o problema de RPC • Computação em Grade: potencializar o uso de computadores ligados em rede • OGSA: padronização para ambientes em grade
Web Services (1) • Mecanismo de RPC • Proposta aberta mantida pela W 3 C • Totalmente baseado em padrões abertos – HTTP, TCP/IP, XML, etc. • Independência de plataforma e linguagem • Interface inteligível para computadores • Utiliza a onipresente infra-estrutura da Internet
Web Services (2) • RPC (Remote Procedure Call) – Surgiu com o modelo Cliente/Servidor – Implementados nos primeiros SOs de rede – Não havia padronização: cada SO implementava seus protocolos, geralmente binários – Transparência na invocação de procedimentos remotos – client stub e server stub: procedimentos procuradores para o procedimento real
Web Services (3) • RPC
Web Services (4) • Web Service: encapsula uma lógica de aplicação, acessível programaticamente por um cliente ou outro Web Service • Padrões RPC anteriores como CORBA, DCOM, RMI: arquitetura fortemente acoplada • Web Services: arquitetura fracamente acoplada • São acessados por um servidor HTTP
Web Services: Tecnologias (5) Ponteiros para a Descrição WSDL UDDI Encontra um serviço Ponteiros para o serviço Consumidor Descreve o Serviço Web Service SOAP Mensagens em XML
Web Services: XML (6) • Língua franca da Internet • Semelhança com o padrão HTML, baseado em tags • Flexibilidade na interpretação dos dados por computador/programador: dado + semântica • Documento XML pode ter outro associado que define sua gramática: DTD ou Schemas • Parser XML: interpretador de fácil acesso
Web Services: XML (7) • • • • • <? xml version="1. 0"? > <MANUFACTURER>Komputer. Source <PRODUCT> <CLASS>Printer <TYPE>dot matrix</TYPE> </CLASS> <NAME>Wizbang 3000</NAME> <FEATURES> <SPEED Units="ppm">40</SPEED> <QUALITY Units="dpi">60</QUALITY> </FEATURES> <PRICE Units="USD"> <RETAIL>200</RETAIL> <WHOLESALE>110</WHOLESALE> </PRICE> <WEIGHT Units="lbs">10</WEIGHT> </PRODUCT> </MANUFACTURER>
Web Services: SOAP (8) • Simple Object Access Protocol • Formato de mensagem para invocação de serviços, escrito em XML • Criado inicialmente por iniciativa da Microsoft para o ambiente Windows e adotado pela W 3 C • SOAP Envelope – SOAP Header: controle da mensagem – SOAP Body: serialização dos parâmetros
Web Services: SOAP (9) • • • • <env: Envelope xmlns: env="http: //www. w 3. org/2003/05/soap-envelope"> <env: Header> <n: alertcontrol env: must. Understand="false" xmlns: n="http: //example. org/alertcontrol"> <n: priority>1</n: priority> <n: expires>2001 -06 -22 T 14: 00 -05: 00</n: expires> </n: alertcontrol> </env: Header> <env: Body> <m: alert xmlns: m="http: //example. org/alert"> <m: msg>Pick up Mary at school at 2 pm</m: msg> </m: alert> </env: Body> </env: Envelope>
Web Services: WSDL (10) • • Web Services Description Language Descreve a interface (contrato) do serviço Semelhante a IDL de CORBA ou DCOM Escrito em XML Suficiente para produzir proxy (client stub) Acessível por HTTP via Internet Seções – Abstratas: Types, Messages e Port. Types; – Concretas: Bindings e Services;
Web Services: WSDL (11) <? xml version="1. 0" encoding="UTF-8" ? > (. . . ) <message name="Simple. foo"> <part name="arg" type="xsd: int"/> </message> <message name="Simple. foo. Response"> <part name="result" type="xsd: int"/> </message> <port. Type name="Simple. Port. Type"> <operation name="foo" parameter. Order="arg" > <input message="wsdlns: Simple. foo"/> <output message="wsdlns: Simple. foo. Response"/> </operation> </port. Type> (. . . )
Web Services: UDDI (12) • Universal Description, Discovery and Integration • Páginas amarelas de Web Services: classificadas de forma padronizada • Disponibiliza com um Web Service num nodo UDDI • É um sistema de registros: ponteiros para os serviços
Computação em Grade • Capacidade de compartilhar e agregar capacidades computacionais e oferecê-las como um serviço • Surgiu com a descentralização da computação, possibilitada pela melhoria nas redes de computadores • Uso de vários computadores colaborando para um mesmo propósito, ao invés de um caríssimo mainframe • Cluster x GRID • Aplicação para problemas que exigem alto poder computacional
OGSA (1) • Open Grid Services Architecture • Padrão aberto para implementação da grade • Define interface padrões para: – Descoberta de serviços – Criação dinâmica de serviços – Gerenciamento do ciclo de vida dos serviços – Notificações – Tratamento de erros
OGSA (2) • Web Services: mecanismo para troca de mensagem usado no OGSA • Fornece ao OGSA as vantagens de independência e flexibilidade • Arquitetura OGSA é dividida em unidades funcionais de baixo nível: instâncias de Web Services
Referências [1] Andrew S. Tanenbaum. Distributed Operating Systems. Prentice Hall. 1995. [2] W 3 C. Web Services Archtiecture. August, 2003. Disponível em www. w 3 c. org/TR/2003/WD-ws-arch-20030808/ [3] SYSTINET. Web Services: A Practical Introduction. 2003. [4] uddi. org. UDDI Executive White Paper. November 14, 2001. Site: www. uddi. org [5] uddi. org. UDDI Technical White Paper. September 6, 2000. Site: www. uddi. org [6] Rajkumar Buyya. Answers to the Enterprise Architect Magazine Query. Disponível em http: //www. cs. mu. oz. au/~raj/press/EA 03/EAInterview. pdf [7] I. Foster, C. Kesselman, J. M. Nick, S. Tuecke. The Phisiology of the Grid – An Open Grid Services Architecture for Distributed Systems Integration. Draft, 2002. Disponível em http: //www. gridforum. org/ogsi-wg/drafts/ogsa_draft 2. 9_2002 -06 -22. pdf
c1324b1cca6ac5ccd2c8f4372de90825.ppt