20
Pesquisa sobre o Pesquisa sobre o uso de Web uso de Web Service Service Alunos: Alunos: Felipe Silveira Felipe Silveira Israel Andreis Israel Andreis Programação Distribuída e Paralela Programação Distribuída e Paralela Prof. Dr. Cláudio F. R. Geyer Prof. Dr. Cláudio F. R. Geyer

Pesquisa sobre o uso de Web Service Alunos:Felipe Silveira Israel Andreis Programação Distribuída e Paralela Prof. Dr. Cláudio F. R. Geyer

Embed Size (px)

Citation preview

Pesquisa sobre o uso Pesquisa sobre o uso de Web Servicede Web Service

Alunos:Alunos: Felipe SilveiraFelipe SilveiraIsrael AndreisIsrael Andreis

Programação Distribuída e ParalelaProgramação Distribuída e Paralela

Prof. Dr. Cláudio F. R. GeyerProf. Dr. Cláudio F. R. Geyer

Proposta inicialProposta inicial Um Um quizquiz a ser respondido por usuários de a ser respondido por usuários de

fóruns.fóruns.

Elaboração de dados estatísticos.Elaboração de dados estatísticos.

Proposta inicialProposta inicial QuizQuiz::

01) Com quantos WebServices você (desenvolvedor) já teve contato?01) Com quantos WebServices você (desenvolvedor) já teve contato?02) Em qual linguagem estava implementado o WebService?02) Em qual linguagem estava implementado o WebService?03) Usa WSDL (Web Services Description Language)?03) Usa WSDL (Web Services Description Language)?04) Usa UDDI (Universal Description, Discovery and Integration)?04) Usa UDDI (Universal Description, Discovery and Integration)?05) Quais linguagens?05) Quais linguagens?06) Necessária integração de cliente e servidor em diferentes linguagens?06) Necessária integração de cliente e servidor em diferentes linguagens?07) De 1 a 10, qual dificuldade da implementação do WebService? (1a3=fácil, 07) De 1 a 10, qual dificuldade da implementação do WebService? (1a3=fácil, 4a7=média, 8ou9=difícil ou 10=ninja)4a7=média, 8ou9=difícil ou 10=ninja)08) Qual o maior obstáculo encontrado?08) Qual o maior obstáculo encontrado?09) Qual foi o tempo aproximado de implementação em dias?09) Qual foi o tempo aproximado de implementação em dias?10) Alguma observação interessante? 10) Alguma observação interessante?

Proposta inicialProposta inicial Não houve colaboração.Não houve colaboração.

PropostaProposta Apresentar um comparativo entre:Apresentar um comparativo entre:- REST e SOAP.- REST e SOAP.

Web ServiceWeb Service O que é?O que é?

É uma solução utilizada na integração de sistemas É uma solução utilizada na integração de sistemas e na comunicação entre aplicações diferentes.e na comunicação entre aplicações diferentes.

Permite à aplicações o acesso a componentesPermite à aplicações o acesso a componentesde software através de protocolos padronizados, de software através de protocolos padronizados, como HTTP ou SMTP. como HTTP ou SMTP.

Web ServiceWeb Service Objetivos:Objetivos:

Melhorar comunicação entre sistemas distribuídos.Melhorar comunicação entre sistemas distribuídos.

Visa interoperabilidade entre máquinas.Visa interoperabilidade entre máquinas.

Web ServiceWeb Service Padrão:Padrão:

W3C e OASIS são as instituições responsáveis pela W3C e OASIS são as instituições responsáveis pela padronização dos padronização dos Web ServicesWeb Services..

Definição da W3C: Definição da W3C: ““Um sistema de software projetado para suportar a Um sistema de software projetado para suportar a

interoperabilidade entre máquinas sobre rede.”interoperabilidade entre máquinas sobre rede.”

FuncionamentoFuncionamento Um WebService é projetado para ser publicado, descobertoUm WebService é projetado para ser publicado, descoberto

e invocado dinamicamente em um ambiente computacionale invocado dinamicamente em um ambiente computacionaldistribuído:distribuído: WSDLWSDL UDDIUDDI SOAPSOAP

Requisitos (WS)Requisitos (WS) Um WebService é projetado para ser publicado, descoberto Um WebService é projetado para ser publicado, descoberto

e invocado dinamicamente em um ambiente computacional e invocado dinamicamente em um ambiente computacional distribuído.distribuído.

DescreverDescrever: descrição dos serviços, incluindo : descrição dos serviços, incluindo especificações de interfaces de I/O e meta informações.especificações de interfaces de I/O e meta informações.(WSDL)(WSDL)

DescobrirDescobrir: localização de serviços a partir das: localização de serviços a partir dascaracterísticas desejadas.(UDDI )características desejadas.(UDDI )

TransportarTransportar: enviar requisições aos serviços e receber: enviar requisições aos serviços e receberresultados.(SOAP)resultados.(SOAP)

REST REST (Roy Fielding)(Roy Fielding)

PrósPrós Menores dificuldades técnicasMenores dificuldades técnicas Desenvolvimento independente.Desenvolvimento independente.

Contras:Contras: Latência de rede é fraca.Latência de rede é fraca. Nem sempre é possível adicionar a favoritos.Nem sempre é possível adicionar a favoritos. SegurançaSegurança

Como Comparar REST e SOAPComo Comparar REST e SOAP REST = Estilo de arquitetura para WEB.REST = Estilo de arquitetura para WEB. SOAP = Padrões de interoperabilidade.SOAP = Padrões de interoperabilidade.

A comparação é uma decisão de modelo de A comparação é uma decisão de modelo de arquitetura.arquitetura.

Como Comparar REST e SOAPComo Comparar REST e SOAP HTML:HTML: Para Soap: protocolo no nível de transporte. Para Soap: protocolo no nível de transporte. Para Rest: protocolo no nível de aplicação.Para Rest: protocolo no nível de aplicação.

REST REST (exemplo)(exemplo)

Como Fazer as chamadas?Como Fazer as chamadas?

Browsers só executam os métodos GET e POST.Browsers só executam os métodos GET e POST. Solução: XMLHttpRequest.Solução: XMLHttpRequest.

Para outros aplicativos: Para outros aplicativos: libwww libwww libcurllibcurl

Onde se usa REST?Onde se usa REST?

Onde se usa SOAP?Onde se usa SOAP?

eBay faz 50 milhões de transações SOAP eBay faz 50 milhões de transações SOAP diariamente.diariamente.

Windows Live liga-se a MSN Messenger em mobiles Windows Live liga-se a MSN Messenger em mobiles via SOAP.via SOAP.

ConclusãoConclusão

Qual é melhor: REST OU SOAP?Qual é melhor: REST OU SOAP?

Não existe “melhor”. São apenas arquiteturas Não existe “melhor”. São apenas arquiteturas diferentes e cabe aos desenvolvedores optarem pela diferentes e cabe aos desenvolvedores optarem pela que está mais de acordo com o projeto.que está mais de acordo com o projeto.

REST to SOAP extensionREST to SOAP extension

Com patrocínio da IBM, a Project Zero lançou uma Com patrocínio da IBM, a Project Zero lançou uma extensão capaz de fazer tal conectividade.extensão capaz de fazer tal conectividade.

A aplicação pode trabalhar com chamadas JSONA aplicação pode trabalhar com chamadas JSON e a e a extensão converte-as em SOAP. extensão converte-as em SOAP.

ReferênciasReferências http://msdn.microsoft.com/pt-br/library/cc564893.http://msdn.microsoft.com/pt-br/library/cc564893.aspxaspx http://imasters.uol.com.br/artigo/1863/java/web_services_in_java/http://imasters.uol.com.br/artigo/1863/java/web_services_in_java/ http://imasters.uol.com.br/artigo/4245/webservices/entendendo_os_webservices/http://imasters.uol.com.br/artigo/4245/webservices/entendendo_os_webservices/ http://www.webservicesarchitect.com/content/articles/hanson01.asphttp://www.webservicesarchitect.com/content/articles/hanson01.asp http://internativa.com.br/artigo_desenv_01.htmlhttp://internativa.com.br/artigo_desenv_01.html http://imasters.uol.com.br/artigo/4535/php/construindo_web_services_em_php/http://imasters.uol.com.br/artigo/4535/php/construindo_web_services_em_php/ http://www.webservicesarchitect.com/content/articles/hanson01.asphttp://www.webservicesarchitect.com/content/articles/hanson01.asp http://www.c-sharpcorner.com/UploadFile/pk_khuman/http://www.c-sharpcorner.com/UploadFile/pk_khuman/

WebServices02122006222948PM/WebServices.aspx?ArticleID=f54b7577-9240-WebServices02122006222948PM/WebServices.aspx?ArticleID=f54b7577-9240-4b0c-9f3c-d5b879d21ec44b0c-9f3c-d5b879d21ec4

http://www.projectzero.org/sMash/1.1.x/docs/zero.devguide.doc/http://www.projectzero.org/sMash/1.1.x/docs/zero.devguide.doc/zero.connection.soap/overview.htmlzero.connection.soap/overview.html