Chamada remota de procedimentos .net
-
Upload
gabii-fonseca -
Category
Technology
-
view
1.689 -
download
3
description
Transcript of Chamada remota de procedimentos .net
RPC - .NETCHAMADAS REMOTAS DE
PROCEDIMENTOS EM .NET
Gabriella Fonseca Ribeiro
www.eufacoprogramas.com
SUMÁRIO
1. Introdução
2. Web Services
3. Intranet Corporativa – Exemplo Ilustrado
4. As Camadas do Web Service
5. SOAP
• Chamada remota de procedimento (RPC) é uma
tecnologia de comunicação entre processos que permite
a um programa de computador chamar um procedimento
em outro espaço de endereçamento. Para o
programador, contudo, a chamada se assemelha a uma
chamada de procedimento local. RPC é uma tecnologia
popular para a implementação do modelo cliente-servidor
de computação distribuída.
• Uma chamada de procedimento remoto é iniciada pelo
cliente enviando uma mensagem para um servidor
remoto para executar um procedimento específico. Uma
resposta é retornada ao cliente.
• A chamada remota a procedimentos nada mais é que uma
forma elegante de troca de mensagens síncronas.
• Quando um processo rodando em uma máquina A chama um
procedimento em uma máquina B, o processo que chamou é
suspenso e a execução do procedimento é realizada na
máquina B. O processo chamador envia informações para o
processo chamado através de parâmetros passados ao
procedimento e recebe informações através do valor retornado
por esse procedimento. Quando o valor de retorno do
procedimento chega ao processo chamador, este volta a ser
executado.
• Atualmente utiliza-se XML como linguagem de descrição
de interface e HTTP como protocolo de rede para formar
serviços web, cujas implementações incluem SOAP e
XML-RPC.
Definição
• É um serviço disponível na Internet, através de umServidor Web
• Possui funções contendo suas regras de negócios, quepodem ser acessadas através de aplicativos
• Possibilita a comunicação entre Sistemas
• Tecnologia que torna possível realizar transações, trocade dados entre empresas, que antes eram difíceis ouimpossíveis
Característ icas
• Baseados em Padrões da Web.
• Os dados trafegam em formato XML, através deum protocolo
• Independente de plataforma, ou seja, sistemasheterogêneos podem se comunicar facilmente.
• Pode retornar vários tipos de dados, simples ecom estrutura complexa.
Necessidades
• Necessidade de Integração entre Negócios (Bussiness
to Bussiness – B2B)
• Tendência do Software como Serviço
• Facilidade de integração entre sistemas –
automatização de processos
Integração entre plataformas
Web Services
Integration
Plataforma Integrada
Microsoft
AS400
OS390Linux
Unix
Quanto maior for a segurança a
conexão para fora (internet) é
completamente bloqueada por
sofisticados firewalls, exceto para
trafego baseado em HTTP gerado por
web browsers. Isto permite o acesso a
world wide web, enquanto os sistemas
de proteção da intranet bloqueiam
hackers e vírus. De alguma forma o
servidor tem que imitar o
comportamento de um servidor web -
os serviços web fazem exatamente
isto. Os mecanismos de interconexão
cliente/server pré existentes (CORBA,
RPC, etc) foram projetados muito
antes que os padrões de acesso a
rede fossem restritos por situações
como esta.
SOAP e Web Services
• O SOAP é um protocolo elaborado para facilitar a
chamada remota de funções via Internet, permitindo que
dois programas se comuniquem de uma maneira
tecnicamente muito semelhante à invocação de páginas
Web.
• O SOAP é um padrão semelhante ao POST, mas os
pedidos são feitos em XML e permitem recursos mais
sofisticados como passar estruturas e arrays.
• Define como as mensagens podem ser trocadas entre
dois sistemas.
• Define uma estrutura XML de troca de mensagens que
pode chamar e retornar resultados a partir de uma
aplicação.
Va n t a g e n s
• Independente de plataforma
• Fácil de decodificar
• Pode ser veiculado pela porta 80, sem a necessidade
de abrir portas no firewall
W e b S e r v i c e s + S O A P
Cliente do Web Service
Windows Application
SOAPMessage
XML
SOAPMessage
XML
SOAPMessage
XML
SOAPMessage
XML
XML
Web Service
SOAP
Response
SOAP
Request
Rede
HTTPMessage
HTML
HTTPMessage
HTML
HTTP
Request
GET- POST
Servidor Web
W e b A p p + W e b S e r v i c e s
Cliente do
Web Service
Web App
HTTPMessage
HTML
HTTPMessage
HTML
SOAPMessage
XML
SOAPMessage
XML
SOAPMessage
XML
SOAPMessage
XML
XML
Web Service
Browser
HTTP
Response
HTTP
Request
SOAP
Response
SOAP
Request
Rede Rede
HTTPMessage
HTML
HTTPMessage
HTML
HTTP
Request
GET- POST
HTTPMessage
HTML
HTTPMessage
HTML
Servidor
Web
R e q u i s i t o s - D e s e n v o l v i m e n t o
Visual Studio.NET, Web Matrix, …
ASP.NetMáquina de
Desenvolvimento
Código
Servidor da
Aplicação
.NET Framework
Aplicação
ASP.Net
IIS
.NET Framework
IIS – Servidor IDE
R e q u i s i t o s - P r o d u ç ã o
.NET Framework
Servidor da
Aplicação
Aplicação
Cliente
Aplicação
ASP.Net
asmx SOAP (xml)
IIS
REFERÊNCIAS
• FONSECA, Gabriella. Criando um Web Service no Visual Studio 2010.http://eufacoprogramas.com/?p=1111 . Acessado em 20 de Agosto de 2011.
• GONÇALVES, Fabricio B., IULIO, Tânia Ribeiro di. Web Services.http://labase.nce.ufrj.br/cursos/sav/aulas/WebServices/slide.html. Acessadoem 23 de Agosto de 2011.
• Microsoft Students to Bussiness [S2B] . 2010. – Material de Apoio a segundafase do programa.
• SANCHES, Andrey. .NET Remoting – Parte 2 - Acessando informaçõesremotamente. http://www.linhadecodigo.com/ArtigoImpressao.aspx?id=794 .Acessado em 20 de Agosto de 2011.
• SANTANA, Mauro. SOAP e Web Services.http://www.linhadecodigo.com.br/Artigo.aspx?id=38&pag=1 . Acessado em 20de Agosto de 2011.