RMI: Uma Visão Conceitual
|
|
|
- Débora Tomé Guimarães
- 10 Há anos
- Visualizações:
Transcrição
1 RMI: Uma Visão Conceitual Márcio Castro, Mateus Raeder e Thiago Nunes 11 de abril de 2007 Resumo Invocação de Método Remoto (Remote Method Invocation - RMI) trata-se de uma abordagem Java para disponibilizar as funcionalidades de uma plataforma de objetos distribuídos, permitindo que um objeto que está rodando em uma Máquina Virtual Java invoque, remotamente, métodos de objetos que estão sendo executados em outra Máquina Virtual. Uma das vantagens oferecidas por esta abordagem é o fato de tornar transparente para o programador a comunicação das partes do sistema através de uma rede. Este artigo traz uma visão geral sobre os principais aspectos (do ponto de vista conceitual) desta tecnologia. 1 Introdução Os primeiros computadores que foram produzidos, além de serem extremamente custosos, ocupavam prédios inteiros. Inicialmente eram somente utilizados em grandes laboratórios de universidades e indústrias. Sendo assim, para que o investimento com esta infraestrutura desse o retorno esperado, desejava-se que a máquina estivesse processando a maior parte do tempo possível. Estes computadores eram utilizados somente por operadores especializados e os jobs (trabalhos) eram processados seqüencialmente. O problema do acesso restrito aos computadores, anteriormente citado, está vinculado a má utilização destes recursos: enquanto um job estava sendo desenvolvido, outros jobs não podiam ser processados. Além disso, a execução de jobs interativos, compostos de ações interdependentes, consumia muito tempo. A m de superar estes problemas, surge então o conceito de tempo compartilhado (time sharing), compartilhando o uso do computador entre diferentes usuários, por determinada fatia de tempo [1]. O advento do conceito de tempo compartilhado foi o primeiro passo para a computação distribuída devido ao fato de prover dois importantes conceitos muito utilizados [1]: compartilhamento simultâneo de recursos por diversos usuários e o acesso a computadores localizados em lugares diferentes. O uso de sistemas distribuídos tornou-se uma prática comum nas organizações que buscam compartilhamento de recursos, melhor comunicação e aumento de desempenho. Exemplos de sua utilização abrangem desde estações de tra- 1
2 balho em uma rede local até a Internet. Normalmente são caracterizados pela presença de atividades independentes em software e hardware heterogêneos [2]. 2 Contexto Por volta dos anos 80 desenvolveu-se uma tecnologia denominada Chamada de Procedimento Remoto (Remote Procedure Call - RPC), com o objetivo de permitir que as linguagens de programação procedurais (C, Pascal, entre outras) chamassem funções que residissem em outros computadores, tão convenientemente como se essa função zesse parte do mesmo programa que executa no computador local. Esta tecnologia possibilitava aos programadores concentrarem-se apenas na programação, subdividindo o sistema em funções, não se preocupando com os mecanismos que permitem que as partes dos aplicativos se comuniquem. Pela facilidade apresentada pela tecnologia, a sua aplicação se difundiu na área de computação distribuída. Resumidamente, o mecanismo de implementação RPC é composto por 5 elementos [1], como demonstrado na gura 1: Figura 1: Mecanismo de implementação RPC. O cliente: é o processo que inicia a Chamada de Procedimento Remoto. É realizada uma chamada local que invoca o procedimento correspondente no seu stub. O stub do cliente: ao receber uma chamada do cliente, empacota a especicação do procedimento e os argumentos em uma mensagem para então 2
3 requisitar ao RPCRuntime local o envio ao stub do servidor. Ao receber o resultado da execução do procedimento, desempacota o resultado e o envia para o cliente. O RPCRuntime: lida com a transmissão de mensagens através da rede entre a máquina do cliente e do servidor. É responsável por retransmissões, conrmações, empacotamento, roteamento e criptograa. Cliente e servidor possuem um RPCRuntime local. O stub do servidor: ao receber um pedido do RPCRuntime local o stub do servidor, a desempacota e torna possível a invocação do procedimento adequado no servidor. Ao receber o resultado da execução do procedimento do servidor o stub do servidor empacota o resultado em uma mensagem e pede ao RPCRuntime local para enviá-la ao stub do cliente. O servidor: ao receber um pedido do seu stub o servidor executa o procedimento adequado e retorna o resultado da execução ao seu stub. Esta tecnologia passou a apresentar dois problemas [3]. O primeiro está relacionado ao tipo de dados: com o advento das linguagens orientadas a objetos surgiu a necessidade de trabalhar com tipos de dados mais complexos (objetos, com atributos e métodos). Entretanto, o RPC foi projetado para trabalhar apenas com determinadas estruturas (compostas apenas por um conjunto de dados simples). O segundo problema está relacionado ao fato de que o programador deve compreender a Linguagem de Denição de Interface (Interface Denition Language - IDL), que é utilizada para descrever as possíveis funções a serem invocadas remotamente e gerar automaticamente os stubs do cliente e do servidor. Neste contexto, surge a tecnologia de Invocação de Método Remoto (Remote Method Invocation - RMI), com a nalidade de resolver os problemas anteriormente citados. A RMI foi desenvolvida baseada nos conceitos de RPC aplicados especicamente à linguagem de programação Java. 3 Invocação de Método Remoto - RMI RMI trata-se de uma solução Java para implementar comunicação entre aplicações distribuídas orientadas a objeto. A composição básica de uma aplicação que utiliza RMI é constituída por dois componentes principais: cliente e servidor. O servidor disponibiliza os serviços para serem acessados remotamente. O cliente, por sua vez, utiliza tais serviços de acordo com sua necessidade. Desta forma, é possível que objetos em diferentes máquinas virtuais Java interajam entre si, independentemente da localização física dessas máquinas. A tecnologia RMI foi disponibilizada a partir da versão 1.1 do Kit de Desenvolvimento Java (Java Development Kit - JDK), e sua Interface de Programação de Aplicação (Application Programming Interface - API) é especicada no pacote java.rmi. 3
4 Aplicações distribuídas orientadas a objeto apresentam três características principais [4]: localização de objetos remotos, comunicação entre objetos remotos e denição de classes (dos objetos que são transmitidos). 3.1 Localização de objetos remotos O cliente necessita de uma maneira para descobrir quais os objetos remotos providos pelo servidor. Para tanto, uma referência a estes objetos é fornecida ao cliente. Este mecanismo é denominado Serviço de Nomes RMI, implementado através do aplicativo RMI Registry. Figura 2: Localização de objetos remotos. O processo de localização de objetos remotos no RMI é demonstrado na gura 2. O servidor RMI, que está sendo executado em uma máquina virtual, envia uma mensagem ao RMI Registry, associando um objeto (que contém os serviços disponibilizados pelo servidor) a um nome. O cliente, por sua vez, procura o objeto remoto através do seu nome consultando o RMI Registry. Desta forma, o cliente invoca o método desejado. 3.2 Comunicação entre objetos remotos Os objetos (nas diferentes máquinas virtuais) devem ser capazes de comunicaremse. Com a utilização de RMI, esta comunicação é realizada de forma transparente ao programador, dando a impressão de estar invocando métodos de objetos locais. A arquitetura RMI oferece a transparência de localização através da organização de três camadas entre os objetos cliente e servidor: Stub/Skeleton, Gerenciador de Referências Remotas e Camada de Transporte RMI [5]. A camada Stub/Skeleton é a responsável por lidar com aspectos da rede, deixando transparentes todas as questões relacionadas a comunicação (empaco- 4
5 tamento e desempacotamento de dados). O cliente invoca métodos do stub que correspondem aos serviços implementados no servidor. Entretanto, os métodos no stub contém diversos aspectos relacionados a rede necessários para invocação remota. Por exemplo, se o servidor implementa o método pow(int, int), o stub também terá a denição deste método. Porém, o stub não conterá a implementação propriamente dita, mas sim, o código necessário para acessar o skeleton remoto. A partir da versão 1.2 do Java Development Kit (JDK) as funções realizadas pelo skeleton foram incorporadas no próprio servidor. A camada responsável por gerenciar as referencias remotas é o middleware entre a camada de Stub/Skeleton e o protocolo de transporte. Em outras palavras, quando ocorre uma consulta ao RMI Registry, os objetos resultantes desta requisição são gerenciados por esta camada. A última camada, denominada Camada de Transporte RMI, oferece o meio necessário para a comunicação entre os objetos cliente e servidor através da rede. Abaixo, gura 3, é ilustrada a organização destas três camadas em uma aplicação RMI. Figura 3: Arquitetura básica de uma aplicação RMI. 3.3 Denição de classes Para desenvolver uma aplicação utilizando Java RMI, é necessário que o programador dena uma interface de serviços, os quais serão disponibilizados pelo objeto servidor. Esta interface criada deverá, obrigatoriamente, extender a interface Remote do pacote java.rmi. Por tratar-se de operações de acesso a métodos remotos, estes métodos devem ser capazes de disparar uma exceção em caso de erro. Esta exceção é chamada RemoteException e deve constar na de- 5
6 nição de todos os métodos contidos nesta interface (throws RemoteException). Este conceito de interface é próprio da linguagem Java, isentando o programador do conhecimento de uma determinada IDL. Criada a interface do servidor, é necessário o desenvolvimento de uma classe que implemente os métodos denidos nela. O objetivo desta é codicar as funcionalidades que devem ser providas pelo servidor. Além de implementar a interface de serviços, esta classe deve extender a classe UnicastRemoteObject, tornando-a disponível para receber chamadas remotas. Por m, deverá ser desenvolvida a parte principal do servidor que instanciará a implementação da interface anteriormente dita, associando o objeto criado a um nome no registro de nomes mantido pelo RMI Registry. Com este vínculo, os serviços deste objeto tornam-se disponíveis para que os clientes acessem-os remotamente. Uma vez que a interface e a classe do serviço tenham sido criadas e compiladas utilizando-se um compilador Java convencional, é necessário criar os correspondentes stubs e skeletons. Para tanto, utiliza-se o aplicativo compilador denominado rmic, disponibilizado juntamente com o JDK. Do outro lado, deverá ser criada a aplicação cliente que irá acessar os serviços remotos oferecidos pelo servidor. Para tanto é necessário a localização destes serviços, realizada através de uma busca no registro de nomes do RMI Registry. Assim, uma referência ao objeto do servidor é obtida e seus métodos podem ser acessados quando necessário. O cliente tem a impressão de estar realizando chamadas a métodos locais. Entretanto, ao receber estas chamadas, o mecanismo Java RMI invoca-as remotamente, tornando transparente toda a comunicação entre o cliente e o servidor. 4 Conclusão A utilização de RMI em sistemas distribuídos orientados a objetos mostra-se como uma solução ecaz para comunicação entre processos remotos. O uso da tecnologia soluciona problemas relacionados ao uso de RPC, o qual não permite utilizar tipos de dados complexos (objetos) e força o programador a conhecer uma IDL especíca. Dentre as vantagens oferecidas destacam-se a facilidade de uso e a transparência de comunicação. Por utilizar o conceito de interface da linguagem Java, a criação de aplicações RMI é facilitada. E, por tratar a invocação de métodos remotos como aparentemente locais, o programador não precisa se preocupar com as questões de comunicação em baixo nível. Referências [1] SINHA, P. K. Distributed Operating Systems. Piscataway, NJ: IEEE Press, ISBN
7 [2] ZOMAYA, A. Y. Parallel and Distributed Computing Handbook. New York, NY: McGraw Hill, ISBN [3] DEITEL, H. M.; DEITEL, P. J. Java how to program. 4th. ed. Upper Saddle River, NJ: Prentice Hall, ISBN [4] Trail: RMI (The Java Tutorials). Disponível em: < Acesso em: 2 de abril [5] POO: Programação Distribuída. Disponível em: < Acesso em: 2 de abril
Adriano Reine Bueno Rafael Barros Silva
Adriano Reine Bueno Rafael Barros Silva Introdução RMI Tecnologias Semelhantes Arquitetura RMI Funcionamento Serialização dos dados Criando Aplicações Distribuídas com RMI Segurança Exemplo prático Referências
Sistemas Distribuídos
Faculdades SENAC Análise e Desenvolvimento de Sistemas 28 de abril de 2010 Principais suportes de Java RMI (Remote Method Invocation), da Sun Microsystems DCOM (Distributed Component Object Model), da
Chamadas Remotas de Procedimentos (RPC) O Conceito de Procedimentos. RPC: Programa Distribuído. RPC: Modelo de Execução
Chamadas Remotas de Chamada Remota de Procedimento (RPC) ou Chamada de Função ou Chamada de Subrotina Método de transferência de controle de parte de um processo para outra parte Procedimentos => permite
Invocação de Métodos Remotos RMI (Remote Method Invocation)
Invocação de Métodos Remotos RMI (Remote Method Invocation) Programação com Objetos Distribuídos Um sistema de objetos distribuídos permite a operação com objetos remotos A partir de uma aplicação cliente
Objetos Distribuídos - Programação Distribuída Orientado a Objetos. Luiz Affonso Guedes
Objetos Distribuídos - Programação Distribuída Orientado a Objetos Luiz Affonso Guedes Introdução Conceitos básicos programação distribuída + programação orientada a objetos = Objetos distribuídos Motivação
Sistemas Distribuídos
Sistemas Distribuídos Comunicação Remota Gustavo Reis [email protected] 1 Comunicação entre processos está no coração de todo sistema distribuído. Não tem sentido estudar sistemas distribuídos
Sistemas Distribuídos
Sistemas Distribuídos Soquetes Um soquete é formado por um endereço IP concatenado com um número de porta. Em geral, os soquetes utilizam uma arquitetura cliente-servidor. O servidor espera por pedidos
Invocação de Métodos Remotos
Invocação de Métodos Remotos Java RMI (Remote Method Invocation) Tópicos Tecnologia RMI Introdução Modelo de camadas do RMI Arquitetura Fluxo de operação do RMI Passos para implementação Estudo de caso
Princípios de Sistemas Distribuídos. Tecnologias utilizadas em sistemas distribuídos Aula 5
Princípios de Sistemas Distribuídos Tecnologias utilizadas em sistemas distribuídos Aula 5 Conceitos de comunicação entre processos Interprocess Communication (IPC) Sistemas distribuídos são construídos
SISTEMAS DISTRIBUÍDOS
SISTEMAS DISTRIBUÍDOS CUP Disk Memoey CUP Memoey Disk Network CUP Memoey Disk Remote Method Invocation (RMI) Introdução Solução JAVA para Objetos Distribuídos Um objeto existe em uma máquina É possível
Modelos de Arquiteturas. Prof. Andrêza Leite [email protected]
Modelos de Arquiteturas Prof. Andrêza Leite [email protected] Agenda Introdução Arquitetura de Sistemas Distribuídos Clientes e Servidores Peer-to-Peer Variações Vários Servidores Proxy Código Móvel
Java 2 Standard Edition. Fundamentos de. Objetos Remotos. Helder da Rocha www.argonavis.com.br
Java 2 Standard Edition Fundamentos de Objetos Remotos Helder da Rocha www.argonavis.com.br 1 Sobre este módulo Este módulo tem como objetivo dar uma visão geral, porém prática, da criação e uso de objetos
Sistemas Distribuídos Comunicação entre Processos em Sistemas Distribuídos: Middleware de comunicação Aula II Prof. Rosemary Silveira F. Melo Comunicação em sistemas distribuídos é um ponto fundamental
SISTEMAS DISTRIBUIDOS
1 2 Caracterização de Sistemas Distribuídos: Os sistemas distribuídos estão em toda parte. A Internet permite que usuários de todo o mundo acessem seus serviços onde quer que possam estar. Cada organização
INE5380 - Sistemas Distribuídos
INE5380 - Sistemas Distribuídos Object Request Broker e CORBA Por: Léo Willian Kölln - 0513227-4 Novembro de 2006 ORB Object Request Broker ORB aqui será tratado como um Middleware que permite a construção
Introdução ao Modelos de Duas Camadas Cliente Servidor
Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos
Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064
Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Comunicação- Protocolos, Tipos, RPC Capítulo 4 Agenda Protocolos em Camadas Pilhas de Protocolos em Sistemas Distribuídos Tipos de Comunicação
Sistemas Distribuídos RPC x RMI. Edeyson Andrade Gomes www.edeyson.com.br
Sistemas Distribuídos RPC x RMI Edeyson Andrade Gomes www.edeyson.com.br Roteiro da Aula Chamada Remota a Procedimento Definição Passagem de Parâmetros STUBS Semântica de Falhas 2 RPC Chamada Remota a
Num sistema de objectos distribuídos, dois conceitos são fundamentais.
Folha 10-1 Java RMI - Remote Method Invocation No modelo de programação orientada a objectos, vimos que um programa consiste numa colecção de objectos que comunicam entre si através da invocação dos seus
CORBA. Common Object Request Broker Architecture. Unicamp. Centro de Computação Rubens Queiroz de Almeida [email protected]
CORBA Common Object Request Broker Architecture Unicamp Centro de Computação Rubens Queiroz de Almeida [email protected] Objetivos Apresentação Tecnologia CORBA Conceitos Básicos e Terminologia Considerações
Sistemas Paralelos e Distribuídos - 2003/2004 Curso: Matemática /Informática Sistemas Distribuídos - 2003/2004 Curso: Ensino da Informática
Java RMI - Remote Method Invocation Folha 5-1 No modelo de programação orientada a objectos, vimos que um programa consiste numa colecção de objectos que comunicam entre si através da invocação dos seus
OBJETOS DISTRIBUÍDOS E INVOCAÇÃO REMOTA
OBJETOS DISTRIBUÍDOS E INVOCAÇÃO REMOTA SUMÁRIO Introdução Comunicação entre objetos distribuídos Eventos e Notificações 1.INTRODUÇÃO Middleware oferece: Transparência de localização Independência de protocolos
UNIVERSIDADE. Sistemas Distribuídos
UNIVERSIDADE Sistemas Distribuídos Ciência da Computação Prof. Jesus José de Oliveira Neto Web Services Web Services Existem diferentes tipos de comunicação em um sistema distribuído: Sockets Invocação
Grupo I [6v] Considere o seguinte extracto de um programa de definição de uma calculadora apenas com a função soma de dois valores reais
Número: Nome: Página 1 de 5 LEIC/LERC 2012/13, Repescagem do 1º Teste de Sistemas Distribuídos, 25 de Junho de 2013 Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Duração:
MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos
MÓDULO 7 Modelo OSI A maioria das redes são organizadas como pilhas ou níveis de camadas, umas sobre as outras, sendo feito com o intuito de reduzir a complexidade do projeto da rede. O objetivo de cada
UFG - Instituto de Informática
UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares [email protected] Aula 13 Web Services Web Services
Comunicação. Parte II
Comunicação Parte II Carlos Ferraz 2002 Tópicos Comunicação Cliente-Servidor RPC Comunicação de objetos distribuídos Comunicação em Grupo Transações Atômicas Comunicação Stream 2 Comunicação cliente-servidor
Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064
Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Processos- Clientes, Servidores, Migração Capítulo 3 Agenda Clientes Interfaces de usuário em rede Sistema X Window Software do lado cliente para
Sistemas Distribuídos Métodos de Invocação Remota II. Prof. MSc. Hugo Souza
Sistemas Distribuídos Métodos de Invocação Remota II Prof. MSc. Hugo Souza Nesta aula, complementando os conceitos que vimos nas aulas anteriores [aula 15], vamos praticar a programação de laboratório
Exemplos práticos do uso de RMI em sistemas distribuídos
Exemplos práticos do uso de RMI em sistemas distribuídos Elder de Macedo Rodrigues, Guilherme Montez Guindani, Leonardo Albernaz Amaral 1 Fábio Delamare 2 Pontifícia Universidade Católica do Rio Grande
Sistemas Distribuídos
Sistemas Distribuídos 11 Objetivos Este capítulo apresenta uma introdução aos sistemas distribuídos em geral Arquiteturas de cliente servidor Características das arquiteturas de 2 e 3 camadas Ambiente
MODELO CLIENTE SERVIDOR
SISTEMAS DISTRIBUÍDOS Modelo Cliente Servidor Modelo que estrutura um S.O. como um grupo de processos cooperantes, chamados servidores, que oferecem serviços a processos usuários, denominados clientes;
Desenvolvimento Cliente-Servidor 1
Desenvolvimento Cliente- 1 Ambiienttes de Desenvollviimentto Avançados Engenharia Informática Instituto Superior de Engenharia do Porto Alexandre Bragança 1998/99 Ambientes de Desenvolvimento Avançados
Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação
Cursos de Computação Sistemas Operacionais Prof. M.Sc. Sérgio Teixeira Aula 05 Estrutura e arquitetura do SO Parte 2 Referência: MACHADO, F.B. ; MAIA, L.P. Arquitetura de Sistemas Operacionais. 4.ed. LTC,
3 SCS: Sistema de Componentes de Software
3 SCS: Sistema de Componentes de Software O mecanismo para acompanhamento das chamadas remotas se baseia em informações coletadas durante a execução da aplicação. Para a coleta dessas informações é necessário
Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO
Conceitos básicos e serviços do Sistema Operacional Prof. Marcos Ribeiro Quinet de Andrade Universidade Federal Fluminense - UFF Pólo Universitário de Rio das Ostras - PURO Tipos de serviço do S.O. O S.O.
Sistemas Operacionais
Sistemas Operacionais Aula 07 Arquitetura de Sistemas Operacionais Prof. Maxwell Anderson www.maxwellanderson.com.br Introdução Conceitos já vistos em aulas anteriores: Definição de Sistemas Operacionais
Sistemas Distribuídos
Sistemas Distribuídos Marcelo Lobosco DCC/UFJF Comunicação em Sistemas Distribuídos Aula 06 Agenda Modelo Cliente-Servidor (cont.) Invocação Remota de Método (Remote Method Invocation RMI) Visão Geral
Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido
Arquitetura Roteiro Arquitetura Tipos de Arquitetura Centralizado Descentralizado Hibrido Questionário 2 Arquitetura Figura 1: Planta baixa de uma casa 3 Arquitetura Engenharia de Software A arquitetura
Um Driver NDIS Para Interceptação de Datagramas IP
Um Driver NDIS Para Interceptação de Datagramas IP Paulo Fernando da Silva [email protected] Sérgio Stringari [email protected] Resumo. Este artigo apresenta o desenvolvimento de um driver NDIS 1 para
Comunicação em Sistemas Distribuídos
Comunicação em Sistemas Distribuídos Sockets Aplicações Protocolo de Aplicação FTP, SMTP, HTTP, Telnet, SNMP, etc. sockets TCP, UDP IP Data Link Ethernet, Token Ring, FDDI, etc Física Conjunto de APIs
MIDDLEWARE Aplicativos RMI, RPC e eventos Camadas Protocolo Requesição-Respostal Middleware Representação Externa dos Dados Sistemas Operacionais
RMI JAVA MIDDLEWARE Aplicativos RMI, RPC e eventos Protocolo Requesição-Respostal Camadas Middleware Representação Externa dos Dados Sistemas Operacionais RMI REMOTE METHOD INVOCATION Invocação remota
Sistemas Distribuídos
Sistemas Distribuídos LICENCIATURA EM COMPUTAÇÃO Prof. Adriano Avelar Site: www.adrianoavelar.com Email: [email protected] Relembrando... Mecanismos de Comunicação Middleware Cenário em uma rede Local
Laboratório de Computação VI JAVA IDL. Fabricio Aparecido Breve - 981648-9
Laboratório de Computação VI JAVA IDL Fabricio Aparecido Breve - 981648-9 O que é Java IDL? Java IDL é uma tecnologia para objetos distribuídos, ou seja, objetos em diferentes plataformas interagindo através
Aula 03-04: Modelos de Sistemas Distribuídos
UNIVERSIDADE Computação Aula 03-04: Modelos de Sistemas Distribuídos 2o. Semestre / 2014 Prof. Jesus Principais questões no projeto de um sistema distribuído (SD) Questão de acesso (como sist. será acessado)
Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO
Intranets FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO As intranets são redes internas às organizações que usam as tecnologias utilizadas na rede mundial
Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2)
Definição de um Sistema Distribuído (1) Introdução Um sistema distribuído é: Uma coleção de computadores independentes que aparecem para o usuário como um único sistema coerente. Definição de um Sistema
Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo
Arquitetura de Redes: Camadas de Protocolos (Parte I) Prof. Eduardo Introdução O que é Protocolo? - Para que os pacotes de dados trafeguem de uma origem até um destino, através de uma rede, é importante
04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc.
MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 1 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Apresenta a diferença entre dado e informação e a importância
Sistemas Distribuídos Arquiteturas Middlewares
Sistemas Distribuídos Arquiteturas s Arquitetura Arquitetura de um sistema é sua estrutura em termos dos componentes e seus relacionamentos Objetivo: garantir que a estrutura satisfará as demandas presentes
Uma Introdução à Arquitetura CORBA. O Object Request Broker (ORB)
Uma Introdução à Arquitetura Francisco C. R. Reverbel 1 Copyright 1998-2006 Francisco Reverbel O Object Request Broker (ORB) Via de comunicação entre objetos (object bus), na arquitetura do OMG Definido
Capítulo VI CORBA. Common Object Request Broker Architecture. [Cardoso2008] Programação de Sistemas Distribuídos em Java, Jorge Cardoso, FCA, 2008.
Common Object Request Broker Architecture [Cardoso2008] Programação de Sistemas Distribuídos em Java, Jorge Cardoso, FCA, 2008. From: Fintan Bolton Pure CORBA SAMS, 2001 From: Coulouris, Dollimore and
Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA
Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos
Sistemas distribuídos:comunicação
M. G. Santos [email protected] Faculdade Câmara Cascudo - Estácio de Sá 16 de abril de 2010 Formas de comunicação Produtor-consumidor: comunicação uni-direccional, com o produtor entregando ao consumidor.
Figura 01 Kernel de um Sistema Operacional
01 INTRODUÇÃO 1.5 ESTRUTURA DOS SISTEMAS OPERACIONAIS O Sistema Operacional é formado por um Conjunto de rotinas (denominado de núcleo do sistema ou kernel) que oferece serviços aos usuários e suas aplicações
Faculdades Santa Cruz - Inove. Plano de Aula Base: Livro - Distributed Systems Professor: Jean Louis de Oliveira.
Período letivo: 4 Semestre. Quinzena: 5ª. Faculdades Santa Cruz - Inove Plano de Aula Base: Livro - Distributed Systems Professor: Jean Louis de Oliveira. Unidade Curricular Sistemas Distribuídos Processos
Sistemas Distribuídos: Conceitos e Projeto Java RMI
Sistemas Distribuídos: Conceitos e Projeto Java RMI Francisco José da Silva e Silva Laboratório de Sistemas Distribuídos (LSD) Departamento de Informática / UFMA http://www.lsd.deinf.ufma.br 19 de agosto
Web Services. (Introdução)
Web Services (Introdução) Agenda Introdução SOA (Service Oriented Architecture) Web Services Arquitetura XML SOAP WSDL UDDI Conclusão Introdução Comunicação distribuída Estratégias que permitem a comunicação
1 http://www.google.com
1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou
Arquitetura de Sistemas Operacionais Machado/Maia. Arquitetura de Sistemas
Arquitetura de Sistemas Operacionais Capítulo 4 Estrutura do Sistema Operacional Cap. 4 Estrutura do Sistema 1 Sistemas Operacionais Pitágoras Fadom Divinópolis Material Utilizado na disciplina Sistemas
Análise e Projeto Orientados por Objetos
Análise e Projeto Orientados por Objetos Aula 02 Análise e Projeto OO Edirlei Soares de Lima Análise A análise modela o problema e consiste das atividades necessárias para entender
Serviços Web: Introdução
Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta aula
Web Services: Metodologias de Desenvolvimento Carlos J. Feijó Lopes José Carlos Ramalho Fevereiro de 2004
Web Services: Metodologias de Desenvolvimento Carlos J. Feijó Lopes José Carlos Ramalho Fevereiro de 2004 1 Contextualização e arquitetura de funcionamento de um Web Service Os Web Services [PRV+01, Cer02]
MicroDNS. Armando Adami Zaro Pablo Augusto Lerina Rodrigues. 3 de outubro de 2007
MicroDNS Armando Adami Zaro Pablo Augusto Lerina Rodrigues 3 de outubro de 2007 Resumo O projeto do MicroDns visa simular localmente o funcionamento de um DNS. Poder-se-á configurar quando da chamada do
IMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET
1 IMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET Daniel da Silva Carla E. de Castro Franco Diogo Florenzano Avelino [email protected]
Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva
1. O que são Serviços Web (Web Services)? Prática da Disciplina de Sistemas Distribuídos Serviços Web IFMA DAI Professor Mauro Lopes C. Silva A ideia central dos Web Services parte da antiga necessidade
SISTEMA GERENCIADOR DE BANCO DE DADOS
BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos [email protected] SISTEMA GERENCIADOR
MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS
MÓDULO 8 ARQUITETURA DOS SISTEMAS DE BANCO DE DADOS Quando falamos em arquitetura, normalmente utilizamos esse termo para referenciar a forma como os aplicativos computacionais são estruturados e os hardwares
Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)
Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,
Técnicas de Programação Avançada TCC- 00175 Profs.: Anselmo Montenegro www.ic.uff.br/~anselmo. Conteúdo: Introdução à Orientação a Objetos
Técnicas de Programação Avançada TCC- 00175 Profs.: Anselmo Montenegro www.ic.uff.br/~anselmo Conteúdo: Introdução à Orientação a Objetos Introdução Paradigmas de programação Programação Estruturada Composição
Sistemas Cliente-Servidor
Sistemas Cliente-Servidor Disciplina Bancos de Dados II (INE 5616 2006-1) Curso de Sistemas de Informação Prof. Renato Fileto INE/CTC/UFSC 1 1 Cliente - Servidor Arquitetura cliente/servidor: Os servidores
Linguagem de Programação Orientada a Objeto. Introdução a Orientação a Objetos Professora Sheila Cáceres
Linguagem de Programação Orientada a Objeto Introdução a Orientação a Objetos Professora Sheila Cáceres Introdução a Orientação a Objetos No mundo real, tudo é objeto!; Os objetos se relacionam entre si
Paradigma Cliente/Servidor
Paradigma Cliente/Servidor Mário Meireles Teixeira UFMA Departamento de Informática Dezembro, 2012 Comunicação em Sistemas Distribuídos! Os processos em um SD estão lógica e fisicamente separados. Precisam
Sistemas Distribuídos
Sistemas Distribuídos Aula 4 Msc. Daniele Carvalho Oliveira Doutoranda em Ciência da Computação - UFU Mestre em Ciência da Computação UFU Bacharel em Ciência da Computação - UFJF Migração de Código Em
Sistemas Distribuídos Capítulos 3 e 4 - Aula 4
Sistemas Distribuídos Capítulos 3 e 4 - Aula 4 Aula passada Threads Threads em SDs Processos Clientes Processos Servidores Aula de hoje Clusters de Servidores Migração de Código Comunicação (Cap. 4) Fundamentos
Considerações no Projeto de Sistemas Cliente/Servidor
Cliente/Servidor Desenvolvimento de Sistemas Graça Bressan Graça Bressan/LARC 2000 1 Desenvolvimento de Sistemas Cliente/Servidor As metodologias clássicas, tradicional ou orientada a objeto, são aplicáveis
Protocolos de Redes Revisão para AV I
Protocolos de Redes Revisão para AV I 01 Aula Fundamentos de Protocolos Conceituar protocolo de rede; Objetivos Compreender a necessidade de um protocolo de rede em uma arquitetura de transmissão entre
1.6. Tratamento de Exceções
Paradigmas de Linguagens I 1 1.6. Tratamento de Exceções Uma exceção denota um comportamento anormal, indesejado, que ocorre raramente e requer alguma ação imediata em uma parte do programa [GHE 97, DER
Relatorio do trabalho pratico 2
UNIVERSIDADE FEDERAL DE SANTA CATARINA INE5414 REDES I Aluno: Ramon Dutra Miranda Matricula: 07232120 Relatorio do trabalho pratico 2 O protocolo SNMP (do inglês Simple Network Management Protocol - Protocolo
IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira
IFPE Disciplina: Sistemas Operacionais Prof. Anderson Luiz Moreira SERVIÇOS OFERECIDOS PELOS SOS 1 Introdução O SO é formado por um conjunto de rotinas (procedimentos) que oferecem serviços aos usuários
Software de rede e Modelo OSI André Proto UNESP - São José do Rio Preto [email protected] O que será abordado Hierarquias de protocolos (camadas) Questões de projeto relacionadas às camadas Serviços
Um pouco do Java. Prof. Eduardo
Um pouco do Java Prof. Eduardo Introdução A tecnologia JAVA é composta pela linguagem de programação JAVA e pela plataforma de desenvolvimento JAVA. Os programas são escritos em arquivos-texto com a extensão.java.
Arquitetura de Computadores. Introdução aos Sistemas Operacionais
Arquitetura de Computadores Introdução aos Sistemas Operacionais O que é um Sistema Operacional? Programa que atua como um intermediário entre um usuário do computador ou um programa e o hardware. Os 4
Analista de Sistemas Ambiente GRID para física experimental de altas energias
Analista de Sistemas Ambiente GRID para física experimental de altas energias Caderno de Questões Prova Discursiva 2015 01 Nos sistemas operacionais, quando um processo é executado, ele muda de estado.
UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2
UML 2 Guia Prático Gilleanes T.A. Guedes Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 Novatec capítulo 1 Introdução à UML A UML (Unified Modeling Language ou Linguagem de Modelagem
Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.
Apresentação Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar modelos para a construção de projetos lógicos de bancos
Documento de Análise e Projeto VideoSystem
Documento de Análise e Projeto VideoSystem Versão Data Versão Descrição Autor 20/10/2009 1.0 21/10/2009 1.0 05/11/2009 1.1 Definição inicial do documento de análise e projeto Revisão do documento
IW10. Rev.: 02. Especificações Técnicas
IW10 Rev.: 02 Especificações Técnicas Sumário 1. INTRODUÇÃO... 1 2. COMPOSIÇÃO DO IW10... 2 2.1 Placa Principal... 2 2.2 Módulos de Sensores... 5 3. APLICAÇÕES... 6 3.1 Monitoramento Local... 7 3.2 Monitoramento
INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1. Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3
INTEGRAÇÃO DE APLICAÇÕES UTILIZANDO WEB SERVICE 1 Kellen Kristine Perazzoli 2 ; Manassés Ribeiro 3 INTRODUÇÃO Atualmente empresas de diversos portes estão encontrando nos web services soluções para seus
UNIVERSIDADE LUSÍADA DE LISBOA. Programa da Unidade Curricular SISTEMAS DISTRIBUIDOS Ano Lectivo 2015/2016
Programa da Unidade Curricular SISTEMAS DISTRIBUIDOS Ano Lectivo 2015/2016 1. Unidade Orgânica Ciências da Economia e da Empresa (1º Ciclo) 2. Curso Engenharia Informática 3. Ciclo de Estudos 1º 4. Unidade
APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com
- Aula 6 - ALGORÍTIMOS PARALELOS MPI - Parallel Virtual Machine e PVM - Parallel Virtual Machine 1. INTRODUÇÃO Inicialmente é necessário conceber alguns conceitos para entendimento dos algoritmos paralelos:
ADMINISTRAÇÃO DE SISTEMA OPERACIONAL DE REDE (AULA 1)
Prof. Breno Leonardo Gomes de Menezes Araújo [email protected] http://blog.brenoleonardo.com.br ADMINISTRAÇÃO DE SISTEMA OPERACIONAL DE REDE (AULA 1) Administração A palavra administração vem do latim
