Chamada remota de procedimentos .net

26
RPC - .NET CHAMADAS REMOTAS DE PROCEDIMENTOS EM .NET Gabriella Fonseca Ribeiro www.eufacoprogramas.com

description

Apresentação sobre

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

INTRODUÇÃO

• 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.

WEB SERVICES

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

INTRANET

CORPORATIVAUma das razões para o uso de web serv ices

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.

AS CAMADAS DO

WEB SERVICE

SOAPSimp le Ob jec t Access Pro toco l

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.