Smart Proxies para Invocação de Serviços Web Replicados

Tamanho: px
Começar a partir da página:

Download "Smart Proxies para Invocação de Serviços Web Replicados"

Transcrição

1 Smart Proxies para Invocação de Serviços Web Replicados José Geraldo Ribeiro Júnior (CEFET-MG / PUC Minas) Orientador: Prof. Marco Túlio Valente (PUC Minas) Fevereiro 2007

2 Apresentação Motivação Proposta Trabalhos relacionados Sistema SmartWS Experimentos Contribuições Conclusão Trabalhos Futuros 2/64

3 Motivação Potencial de Serviços Web para tornar realidade, idéias e princípios propostos em Computação Orientada por Serviços (SOC) Características do ambiente Flutuações de largura de banda Alto número de falhas Elevadas latências Desafios na busca de QoS na Internet Desempenho Disponibilidade 3/64

4 Replicação Vantagem Incrementa o desempenho e a disponibilidade de aplicações distribuídas Dificuldades Localização da réplica Diferenças entre réplicas 4/64

5 Solução - Middleware Vantagem Apoio ao desenvolvimento de clientes de serviços Web evitando o entrelaçamento entre o código funcional e não-funcional Considerar Características do cliente Latência de rede Carga de processamento nos servidores Dificuldade Atuais plataformas de middleware não disponibilizam suporte a replicação 5/64

6 Proposta Uso de Smart Proxies Extensão que inclui a especificação e geração de proxies especiais, destinados a encapsular as tarefas relacionadas com a seleção da melhor réplica de um serviço Extensão proposta - SmartWS Recursos definição de interfaces abstratas definição de políticas de seleção definição de adaptadores de interface definição de sessões de uso definição de protocolo de invocação de métodos 6/64

7 Trabalhos relacionados Políticas para seleção transparente de serviços Web replicados (implementadas por clientes) Framework RWS Implementa cinco políticas para seleção de servidores Web replicados: Aleatória (Randômica), Paralela, HTTPing, Melhor Última e Melhor Mediana Apresenta uma avaliação empírica das políticas implementadas, utilizando serviços Web reais espalhados em três continentes 7/64

8 Análise crítica - RWS Deixa a cargo da aplicação cliente a definição da política de seleção de réplica Não apresenta diretrizes claras e objetivas sobre os ambientes de rede adequados a cada uma das políticas propostas Não considera o fato dos servidores Web possuírem picos distintos de processamento e tráfego de rede de acordo com os fuso horários O cenário utilizado apresentava poucas falhas e por isso ignorou-se o tratamento de falhas Conseqüência: não foi possível detectar o problema de adaptação da política via Melhor Mediana 8/64

9 Contribuições em relação a RWS Proposta da política PBM (Parallel Best Median) para seleção de servidores Diretrizes claras e objetivas sobre os ambientes de rede adequados a cada uma das políticas de seleção de réplicas propostas Suporte a adaptadores de interfaces Suporte ao estabelecimento de sessões de uso de um servidor Suporte a protocolos de invocação de métodos Geração automática dos smart proxies, a partir de uma linguagem de especificação de alto nível 9/64

10 SmartWS Políticas de seleção de réplicas Seleção Estática Seleção Aleatória Seleção Paralela Seleção via Melhor Mediana Seleção PBM (Parallel Best Median) 10/64

11 Política de seleção - Estática Funcionamento Programador define, estaticamente, a ordem em que as réplicas serão invocadas (em caso de falhas) A política falha quando todas as réplicas falham Aplicação Tempos de resposta previamente conhecidos Prioridade de acesso a determinada réplica Sintaxe de uso em SmartWS policy service1 > service2 >... > servicen 11/64

12 Política de seleção - Aleatória Funcionamento Escolhe-se aleatoriamente a réplica que será invocada pelo cliente A política falha quando todas as réplicas falham Aplicação Servidores com características e tempos de resposta semelhantes Sintaxe de uso em SmartWS policy service1? service2?...? servicen 12/64

13 Política de seleção - Paralela Funcionamento Invoca-se concorrentemente todas as réplicas conhecidas de um serviço Web A política falha quando todas as réplicas falham Aplicação Tempos de resposta desconhecidos É permitido invocar todas as réplicas simultaneamente Desvantagem: overhead gerado Sintaxe de uso em SmartWS policy service1 service2... servicen 13/64

14 Política de seleção Melhor Mediana Funcionamento O serviço invocado é aquele que possui a menor mediana dentre as k últimas invocações A política falha quando todas as réplicas falham Aplicação Tempos de resposta desconhecidos Pequena variação nos tempos de resposta Poucas falhas Sintaxe de uso em SmartWS policy bestmedian(service1, service2,..., servicen) 14/64

15 Problemas detectados Política não se adapta a grandes variações no tempo de resposta e falhas Conseqüência: invocação de um serviço que se recuperou (após uma seqüência ruim de invocações) depende da piora de todos os outros Uso de buffer grande Conseqüência: tamanho do buffer está diretamente relacionado ao tempo necessário para adaptação 15/64

16 Exemplo de uso - Buffer com 13 posições Política utilizada - via Melhor Mediana. Mediana dos servidores: A = 400ms, B = 500ms, C = 650ms, D = 580ms Servidor A Posição do Situação 1 9 invocações Buffer (ms) depois (ms) Mediana /64

17 Princípios básicos para definição da política PBM (Parallel Best Median) Resolver o problema do overhead gerado pela política Paralela Proposta: definir um limite superior para o paralelismo, baseado nas características da rede Utilizar outros recursos além da escolha da melhor mediana (cenário que apresente alterações bruscas nos tempos de resposta ou falhas) Proposta: é imprescindível, independentemente do critério para seleção da réplica, renovar os tempos de todos os servidores periodicamente, para obter um novo panorama do cenário 17/64

18 Política de seleção PBM (Parallel Best Median) Combina aspectos positivos das políticas de seleção Paralela e via Melhor Mediana A cada ciclo com n invocações, as t primeiras invocações funcionam de forma idêntica à política Paralela Objetivo Atualizar o tempo de resposta de todos os servidores no início de cada ciclo Permitir que servidores voltem a ser selecionados Obs.: t deve ser igual ao b, onde b é o tamanho do buffer 2 18/64

19 Política de seleção PBM (Parallel Best Median) Nas próximas invocações do ciclo, invoca-se de forma concorrente: o serviço com a menor mediana m os serviços cujas medianas são menores ou iguais a m*k (limitados a um máximo de p servidores (k > 0, p r)) k - grau de paralelismo, p - limite superior para este paralelismo e r - total de réplicas Aplicação Tempos de resposta desconhecidos Variação nos tempos de resposta Falhas 19/64

20 Política de seleção PBM (Parallel Best Median) A política falha quando todas as réplicas falham Sintaxe de uso em SmartWS policy pbm(1.2, 2, 10, 3, service1, service2,.., servicen) Obs.: respectivamente: k, p, n, t 20/64

21 Composição de políticas Exemplo 1 policy (service1 service2 service3) > service4 Exemplo 2 policy pbm(1.2, 2, 10, 3, service1, service2, service3) > (service4 service5) 21/64

22 Adaptadores de interface Possíveis diferenças entre interfaces Nome dos métodos Número, tipo e ordem dos parâmetros de entrada SmartWS se vale dos conceitos de interfaces abstratas e adaptadores de interfaces Objetivo: compatibilizar a interface abstrata de um cliente com as interfaces concretas das réplicas que este cliente consulta Um objeto adaptador deve implementar a interface abstrata e possuir uma referência para o serviço que está sendo adaptado 22/64

23 Sessão de uso As operações opstart e opend delimitam uma sessão Desabilitam e habilitam o emprego de uma política de seleção de réplicas Aplicação Operação altera o estado de uma réplica e exige que as operações seguintes sejam processadas sobre o estado alterado Exemplo - Sistema de comércio eletrônico: operações como pesquisaproduto, login e logout 23/64

24 Protocolo de Invocação Define um protocolo com seqüências válidas de mensagens enviadas aos servidores remotos por meio de um AFD Cada transição representa uma chamada ao método da interface abstrata (se o estado atual não possui uma transição correspondente ao método, a referida chamada é inválida) 24/64

25 Estudo de caso Método Invocado pesqproduto pesqproduto additemcarrinho login additemcarrinho listacarrinho efetuacompra logout pesqproduto pesqproduto Servidor Estado q0 q0 Msg Erro q1 q1 q1 q1 q0 q0 q0 25/64

26 Timeout Tempo máximo no qual o cliente está disposto a esperar por uma resposta das réplicas Tempo considerado a partir da invocação até o momento em que a aplicação cliente recebe a resposta Timeout em sessões de uso No caso de perda da conexão durante uma sessão de uso é possível definir: número de tentativas para restabelecer a sessão intervalo entre cada tentativa 26/64

27 Interface de Programação SmartWS Arquitetura Geração Funcionamento Linguagem de especificação 27/64

28 Arquitetura do Sistema 28/64

29 Processo de geração de SmartWS 29/64

30 Funcionamento de SmartWS (política PBM) 30/64

31 Linguagem de especificação (sintaxe) interface name= EchoInt webservice alias= service1 uri= adapter= terra1 webservice alias= service2 uri= adapter= terra2 webservice... buffer size= 5 refresh= 20 timeout= policy pbm(1.2, 2, 10, 3, service1, service2,..., servicen ) end 31/64

32 Linguagem de especificação (sintaxe)... buffer... session begin= login finish= logout retry= 5 interval= 3000 protocol methods= pesqproduto, login, logout, additemcarrinho, remitemcarrinho, efetuacompra, limpacarrinho, listacarrinho states= q0, q1 transitions= q0, pesqproduto, q0; q0, login, q1; q1, additemcarrinho remitemcarrinho..., q1; q1, logout, q0; timeout = policy... end 32/64

33 Exemplo de implementação de uma aplicação cliente de SmartWS public class cliente { public static void main(string[] args){ //Instancia o objeto do tipo PROXY convtemp teste = PROXY.getInstance(); for(int x=1; x<=100; x++) { try { teste.ctof(100); } catch (WSFailureInvocation e) {... } catch (ProtocolFailure e) {... } catch (Exception e) {... } } } } 33/64

34 Resultados Experimentais Cenário 1 4 experimentos curtos 100 invocações (cada política) 3 servidores utilizados em cada experimento Políticas utilizadas: Estática, Aleatória, Paralela, via Melhor Mediana e PBM Serviço utilizado conversão de temperatura Cenário 2 3 experimentos de longa duração Cada experimento 4 dias (segunda a quinta-feira) 24h por dia 6 servidores utilizados Políticas utilizadas: Aleatória, Paralela, via Melhor Mediana e 2 variações da política PBM Serviço utilizado Echo (mensagens de 8 KB, 4 KB e 1 KB) 34/64

35 Resultados Experimentais Experimento 1 (Cenário 1) Foram utilizados 3 servidores (WebserviceX, DeveloperDays, local) 35/64

36 Resultados Experimentais Experimento 2 (Cenário 1) Foram utilizados 3 servidores locais (iniciados sem nenhuma carga extra de processamento) 36/64

37 Resultados Experimentais Experimento 2 (Cenário 1) Distribuição de cargas 37/64

38 Resultados Experimentais Experimento 3 (Cenário 1) Foram utilizados 3 servidores remotos (WebserviceX, DeveloperDays, CEFET-MG) O tempo de resposta dos servidores variava de forma considerável Servidores apresentavam sempre uma baixa taxa de falhas 38/64

39 Resultados Experimentais 39/64

40 Resultados Experimentais Experimento 4 (Cenário 1) Foram utilizados 3 servidores (WebserviceX, DeveloperDays, local (indisponível nas primeiras 50 invocações)) 40/64

41 Resultados Experimentais 41/64

42 Resultados Experimentais Serviços utilizados nos Experimentos 5, 6 e 7 (Cenário 2) WS (Terra) WS (Terra) WS (Empresa de BH) WS (Empresa de BH) WS (CEFET - MG) WS (Unicamp) 42/64

43 Resultados Experimentais Configurações da política PBM nos Experimentos 5, 6 e 7 (Cenário 2) Argumentos n t k p PBM ,2 1 PBM ,2 2 43/64

44 Resultados Experimentais Semana 1ª 2ª 3ª Registro de falhas durante os Experimentos do Cenário 2 Mensagens 8 KB 4 KB 1 KB Experimento Número de Invocações Timeouts 424 (1,4%) 887 (3,4%) 1382 (3,6%) Outras falhas 66 (0,2%) 41 (0,2%) 29 (0,1%) Obs.: Outras falhas - falhas na rede local, no acesso à Internet ou nos servidores consultados 44/64

45 Resultados Experimentais Experimento 5 (Cenário 2) Experimentos com 8 KB 45/64

46 Resultados Experimentais 46/64

47 Resultados Experimentais 47/64

48 Resultados Experimentais 48/64

49 Resultados Experimentais Experimento 6 (Cenário 2) Experimentos com 4 KB 49/64

50 Resultados Experimentais 50/64

51 Resultados Experimentais 51/64

52 Resultados Experimentais 52/64

53 Resultados Experimentais Experimento 7 (Cenário 2) Experimentos com 1 KB 53/64

54 Resultados Experimentais 54/64

55 Resultados Experimentais 55/64

56 Resultados Experimentais 56/64

57 Resultados Experimentais Somatório dos tempos de invocação - Mensagens de 8 KB 57/64

58 Resultados Experimentais Somatório dos tempos de invocação - Mensagens de 4 KB 58/64

59 Resultados Experimentais Somatório dos tempos de invocação - Mensagens de 1 KB 59/64

60 Contribuições Proposta de uma nova política de seleção chamada PBM (Parallel Best Median) Implementação de um protótipo em Java do sistema SmartWS Utiliza o conceito de smart proxies Suporta as principais políticas de seleção de servidores replicados, incluindo a política proposta PBM Adaptação de interfaces remotas Estabelecimento de sessões de uso Definição de protocolos de invocação Smart proxies são gerados automaticamente a partir de uma linguagem de especificação de alto nível Validação do protótipo proposto, por meio de experimentos Definição de diretrizes que permitem a um programador de clientes de serviços Web optar pela política mais adequada a sua aplicação 60/64

61 Conclusão Diretrizes para escolha de políticas de seleção de réplicas Política Estática Aleatória Mediana Ambiente Computacional Recomendada quando se tem servidores com tempos de resposta conhecidos a priori, estáveis e diferentes entre si (Experimento 1) Recomendada quando se tem servidores com tempos de resposta conhecidos a priori, estáveis e semelhantes entre si (Experimento 2) Recomendada quando se tem servidores desconhecidos a priori, mas que apresentam pequenas variações nos tempos de resposta. Não recomendada para ambientes instáveis, como a Internet (Experimentos 3, 5, 6 e 7) 61/64

62 Conclusão Política Paralela PBM Ambiente Computacional Recomendada quando se tem servidores com tempos de resposta desconhecidos ou que variam ao longo do tempo, que falham com freqüência considerável e em situações onde é permitido invocar todas as réplicas simultaneamente. Recomendado somente quando se utiliza um tamanho de mensagem que gere um overhead suportado pela rede (Experimentos 6 e 7) Recomendada quando se tem servidores com tempos de resposta desconhecidos ou que variam ao longo do tempo, que falham com freqüência considerável e onde o tamanho da mensagem não é previamente conhecido. Recomendada para ambientes como a Internet (Experimentos 4, 5, 6 e 7) 62/64

63 Trabalhos Futuros Permitir que as configurações da política PBM sejam definidas em tempo de execução Definir, por exemplo, um tamanho de ciclo maior ou menor, como mais ou menos invocações em paralelo Desenvolver um mecanismo para monitoramento e análise dos dados históricos, com o objetivo de prever mudanças de comportamento no ambiente Sugestão - utilizar técnicas de Inteligência Artificial como, por exemplo, Redes Neurais Fazer um estudo para definir o limite suportado com mensagens de tamanho x em uma rede com largura de banda y, acessando em paralelo z servidores Web 63/64

64 Trabalhos Futuros Permitir, em tempo de execução, uma combinação das políticas suportadas por SmartWS, ou mesmo alteração entre elas Definir em SmartWS a utilização de buffers diferentes para cada método, ou classes de métodos, de um servidor 64/64

65 Smart Proxies para Invocação de Serviços Web Replicados José Geraldo Ribeiro Júnior (CEFET-MG / PUC Minas) Orientador: Prof. Marco Túlio Valente (PUC Minas) Fevereiro 2007

Smart Proxies para Invocação de Serviços Web Replicados

Smart Proxies para Invocação de Serviços Web Replicados Smart Proxies para Invocação de Serviços Web Replicados José Geraldo R. Junior PUC Minas Belo Horizonte, Brasil jgrjunior@gmail.com Glauber Tadeu S. Carmo PUC Minas Belo Horizonte, Brasil glaubertadeu@gmail.com

Leia mais

Prof. Me. Sérgio Carlos Portari Júnior

Prof. Me. Sérgio Carlos Portari Júnior Prof. Me. Sérgio Carlos Portari Júnior Ambientes que visam desenvolver aplicações que precisam de um processamento paralelo e distribuído deverão saber lidar com algumas dificuldades. Isto decorre da heterogeneidade

Leia mais

Smart Proxies para Invocação de Serviços Web Replicados

Smart Proxies para Invocação de Serviços Web Replicados José Geraldo Ribeiro Júnior Smart Proxies para Invocação de Serviços Web Replicados Dissertação de Mestrado apresentada ao Programa de Pós-Graduação em Informática da Pontifícia Universidade Católica de

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Faculdades SENAC Análise e Desenvolvimento de Sistemas 1 de agosto de 2009 Orientação a Objetos Encapsulamento: Parte interna (privada) dos objetos Implementação: métodos Estado: atributos, variáveis,

Leia mais

Sistemas Operacionais II

Sistemas Operacionais II Modelo orientado a objetos: uma pequena revisão Instituto de Informátic ca - UFRGS Sistemas Operacionais II Modelos para programação distribuída (Remote Method Invocation) Aula 14 Programa é visto como

Leia mais

RPC e RMI. Sistemas Distribuídos. Mauro Lopes Carvalho Silva. Professor EBTT DAI Departamento de Informática Campus Monte Castelo

RPC e RMI. Sistemas Distribuídos. Mauro Lopes Carvalho Silva. Professor EBTT DAI Departamento de Informática Campus Monte Castelo 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

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos RPC Remote Procedure Call 1 Fonte: Alcides Calsavara e Thais V. Batista Chamada de Procedimentos Remotos (RPC) Motivação: comunicação baseada em operações de entrada/saída Ideal:

Leia mais

HMI: UM MIDDLEWARE PARA OBJETOS DISTRIBUÍDOS SOBRE O PROTOCOLO HTTP

HMI: UM MIDDLEWARE PARA OBJETOS DISTRIBUÍDOS SOBRE O PROTOCOLO HTTP HMI: UM MIDDLEWARE PARA OBJETOS DISTRIBUÍDOS SOBRE O PROTOCOLO HTTP Aluno: Abel Luiz Cechinel Orientador: Paulo Fernando da Silva Sumário Introdução; Fundamentação Teórica; Desenvolvimento; Conclusão;

Leia mais

Invocação Remota. Prof. Leonardo Barreto Campos. 1/29

Invocação Remota. Prof. Leonardo Barreto Campos.   1/29 Invocação Remota Prof. Leonardo Barreto Campos 1/29 Sumário Introdução Chamada de Procedimento Remoto Invocação a Método Remoto Leitura Complementar Bibliografia 2/29 Introdução Essa aula trata como os

Leia mais

Desenvolvimento de Aplicações Distribuídas

Desenvolvimento de Aplicações Distribuídas Desafios e Características Pontifícia Universidade Católica de Minas Gerais Instituto de Ciências Exatas e Informática DAD (2019/01) Tópicos Apresentação da disciplina Introdução Desafios e características

Leia mais

15/4/15. Processamento Paralelo Middleware Orientado a Objetos. Sistema operacional é a única infraestrutura para interação. Middleware é adicionado

15/4/15. Processamento Paralelo Middleware Orientado a Objetos. Sistema operacional é a única infraestrutura para interação. Middleware é adicionado Aplicações distribuídas: interação entre partes Processamento Paralelo Middleware Orientado a Objetos Prof. João Paulo A. Almeida (jpalmeida@inf.ufes.br) Rede A Rede B Rede C 2015/01 - INF02799 Sistema

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos LICENCIATURA EM COMPUTAÇÃO Prof. Adriano Avelar Site: www.adrianoavelar.com Email: eam.avelar@gmail.com 1. Que são sistemas abertos? É um sistema que oferece serviços de acordo com

Leia mais

Programando sistemas distribuídos com objetos distribuídos na rede TCP/IP. Prof. Me. Sérgio Carlos Portari Júnior

Programando sistemas distribuídos com objetos distribuídos na rede TCP/IP. Prof. Me. Sérgio Carlos Portari Júnior Programando sistemas distribuídos com objetos distribuídos na rede TCP/IP Prof. Me. Sérgio Carlos Portari Júnior Conteúdo Programático Contextualizando: Aula anterior Camada Middleware Programar para SD

Leia mais

Aspectos para Construção de Aplicações Distribuídas

Aspectos para Construção de Aplicações Distribuídas Aspectos para Construção de Aplicações Distribuídas Cristiano Amaral Maffort maffort@gmail.com Programa de Pós-Graduação em Informática PUC Minas Belo Horizonte MG 12 de junho de 2007 Middleware Objetivo:

Leia mais

Objetos e Componentes Distribuídos: EJB e CORBA

Objetos e Componentes Distribuídos: EJB e CORBA : EJB e CORBA 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

Leia mais

INTRODUÇÃO. RPC x RMI

INTRODUÇÃO. RPC x RMI 1 INTRODUÇÃO RPC x RMI 2 INTRODUÇÃO RPC Remote procedure call Este termo é utilizado para aplicativos clientes que fazem normalmente chamadas a procedimentos remotos que estão em outro processo e hosts.

Leia mais

AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES

AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES ORGANIZAÇÃO E ARQUITETURA DE COMPUTADORES II AULA 03: PROCESSAMENTO PARALELO: MULTIPROCESSADORES Prof. Max Santana Rolemberg Farias max.santana@univasf.edu.br Colegiado de Engenharia de Computação MULTIPROCESSADORES

Leia mais

Introdução a Web Services

Introdução a Web Services Introdução a Web Services Mário Meireles Teixeira DEINF/UFMA O que é um Web Service? Web Service / Serviço Web É uma aplicação, identificada por um URI, cujas interfaces podem ser definidas, descritas

Leia mais

UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA. Sistemas Distribuídos

UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA. Sistemas Distribuídos UNIVERSIDADE FEDERAL DE GOIÁS INSTITUTO DE INFORMÁTICA Sistemas Distribuídos Mestrado em Ciência da Computação 1o. Semestre / 2006 Prof. Fábio M. Costa fmc@inf.ufg.br www.inf.ufg.br/~fmc/ds-msc2006 Aula

Leia mais

Informática UFRGS. Programação com Objetos Distribuídos (C. Geyer) Java Comunicação 1

Informática UFRGS. Programação com Objetos Distribuídos (C. Geyer) Java Comunicação 1 Programação com Objetos Distribuídos (C. Geyer) Java Comunicação 1 Autor Autor Local Cláudio Geyer Instituto de Informática disciplinas: POD e PDP Versão v4 2010-1 Programação com Objetos Distribuídos

Leia mais

Reuso de Software Aula Maio 2012

Reuso de Software Aula Maio 2012 Reuso de Software Aula 19 Tópicos da Aula Engenharia de Software baseada em Componentes (CBSE) Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo reuso.software@gmail.com Componentes Modelos de Componentes

Leia mais

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar

APLICAÇÕES EM SISTEMAS DISTRIBUÍDOS Prof. Ricardo Rodrigues Barcelar - Aula 5 - PROGRAMAÇÃO DISTRIBUÍDA COM RMI 1 (Remote Method Invocation) 1. INTRODUÇÃO Sistemas distribuídos necessitam que aplicações, executando em vários espaços de endereçamento, normalmente em diferentes

Leia mais

Universidade Federal do Rio de Janeiro Informática DCC/IM. Arquitetura de Computadores II. Arquiteturas MIMD. Arquiteturas MIMD

Universidade Federal do Rio de Janeiro Informática DCC/IM. Arquitetura de Computadores II. Arquiteturas MIMD. Arquiteturas MIMD Universidade Federal do Rio de Janeiro Informática DCC/IM Arquitetura de Computadores II Arquiteturas MIMD Arquiteturas MIMD As arquiteturas MIMD dividem-se em dois grandes modelos: Arquiteturas MIMD de

Leia mais

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação

Java RMI. RMI Remote Method Invocation. Chamadas Remotas de Procedimentos (RPC) RPC - Implementação Java Remote Method Invocation Java Remote Method Invocation () é um protocolo Java para comunicação entre processos Permite objetos Java invocar transparentemente métodos de outros objetos (que podem estar

Leia mais

Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces

Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces Linguagem de Programação Orientada a Objeto Polimorfismo, Classes Abstractas e Interfaces Professora Sheila Cáceres Polimorfismo Polimorfismo Polimorfismo é a característica única de linguagens orientadas

Leia mais

INTEGRAÇÃO DE UMA REDE DE SENSORES SEM FIO COM A WEB UTILIZANDO UMA ARQUITETURA ORIENTADA A SERVIÇO

INTEGRAÇÃO DE UMA REDE DE SENSORES SEM FIO COM A WEB UTILIZANDO UMA ARQUITETURA ORIENTADA A SERVIÇO 6ª Jornada Científica e Tecnológica e 3º Simpósio de Pós-Graduação do IFSULDEMINAS 04 e 05 de novembro de 2014, Pouso Alegre/MG INTEGRAÇÃO DE UMA REDE DE SENSORES SEM FIO COM A WEB UTILIZANDO UMA ARQUITETURA

Leia mais

Avanços e Perspectivas do Projeto Integrade na UFMA

Avanços e Perspectivas do Projeto Integrade na UFMA Avanços e Perspectivas do Projeto Integrade na UFMA Francisco José da Silva e Silva Universidade Federal do Maranhão - UFMA Departamento de Informática Laboratório de Sistemas Distribuídos - LSD Agosto

Leia mais

Sistemas de Arquivos Distribuídos. Bruno M. Carvalho Sala: 3F2 Horário: 35M34

Sistemas de Arquivos Distribuídos. Bruno M. Carvalho Sala: 3F2 Horário: 35M34 Sistemas de Arquivos Distribuídos Bruno M. Carvalho Sala: 3F2 Horário: 35M34 Introdução Serviço de arquivos descreve os serviços oferecidos pelo sistema de arquivos aos clientes Servidor de arquivos processo

Leia mais

Principais conceitos de CORBA

Principais conceitos de CORBA Principais conceitos de CORBA Tecgraf PUC-Rio fevereiro de 2011 Common Object Request Broker Architecture Uma arquitetura aberta para o desenvolvimento de aplicações distribuídas em um ambiente multilinguagem

Leia mais

Programação Distribuída. Metas de um Sistema Distribuído

Programação Distribuída. Metas de um Sistema Distribuído Programação Distribuída Metas de um Sistema Distribuído Programação Distribuída Metas de um Sistema Distribuído Um S.D. deve oferecer: 1. fácil acesso a seus recursos; 2. ocultar onde estão esses recursos,

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Faculdades SENAC Análise e Desenvolvimento de Sistemas 1 de agosto de 2009 Introdução Instructor's Guide for Colouris et al. SDs de diferentes tipos compartilham importantes propriedades fundamentais e

Leia mais

5 Processo de Reificação e de Desenvolvimento com ACCA

5 Processo de Reificação e de Desenvolvimento com ACCA Uma Arquitetura para a Coordenação e a Composição de Artefatos de Software 53 5 Processo de Reificação e de Desenvolvimento com ACCA Resumo Este capítulo visa esclarecer e descrever atividades existentes

Leia mais

Componente de aplicação. Figura 1 - Elementos funcionais de uma aplicação sendo executados de forma distribuída

Componente de aplicação. Figura 1 - Elementos funcionais de uma aplicação sendo executados de forma distribuída 11 1 Introdução Recentes avanços em redes de computadores impulsionaram a busca e o desenvolvimento de meios para facilitar e acelerar o desenvolvimento de aplicações em sistemas distribuídos, tornando

Leia mais

Desenvolvimento de um Framework para replicação de dados entre bancos heterogêneos

Desenvolvimento de um Framework para replicação de dados entre bancos heterogêneos Desenvolvimento de um Framework para replicação de dados entre bancos heterogêneos João Batista Gianisini JúniorJ Alexander Roberto Valdameri - Orientador Roteiro da apresentação Introdução Objetivos Motivação

Leia mais

Um Serviço Escalável e Robusto para Gerenciamento de Membros em Grades Computacionais de Grande Escala*

Um Serviço Escalável e Robusto para Gerenciamento de Membros em Grades Computacionais de Grande Escala* Um Serviço Escalável e Robusto para Gerenciamento de Membros em Grades Computacionais de Grande Escala* Fernando Castor Filho 1, Rodrigo Castro 2, Augusta Marques 2, Francisco M. Soares-Neto 2, Raphael

Leia mais

Estágio Supervisionado

Estágio Supervisionado Estágio Supervisionado Protótipo de um sistema de pré-matrícula via Internet utilizando agentes com acesso a banco de dados. Acadêmico : Mauri Ferrandin Empresa : FERJ Orientador na Empresa : Achilles

Leia mais

O que é um sistema distribuído?

O que é um sistema distribuído? Disciplina: Engenharia de Software 4 Bimestre Aula 1: ENGENHARIA DE SOFTWARE DISTRIBUÍDO O que é um sistema distribuído? Segundo Tanenbaum e Steen (2007) um sistema distribuído é uma coleção de computadores

Leia mais

Tecnologias de Distribuição e Integração. Quais as preocupações a ter com um sistema distribuído?

Tecnologias de Distribuição e Integração. Quais as preocupações a ter com um sistema distribuído? network link: Tecnologias de Distribuição e Integração ISP intranet backbone desktop computer: server: satellite link no interior de uma organização (intranet) clientes externos entre organizações 2 Quais

Leia mais

SSC0611 Arquitetura de Computadores

SSC0611 Arquitetura de Computadores SSC0611 Arquitetura de Computadores 20ª Aula Arquiteturas Paralelas Arquitetura MIMD com Memória Compartilhada Profa. Sarita Mazzini Bruschi sarita@icmc.usp.br Arquiteturas MIMD As arquiteturas MIMD dividem-se

Leia mais

Número: Nome: Página 1 de 7. Duração da prova: 1h30m. Grupo I [7] Considere o seguinte excerto (incompleto) de um programa cliente em SUN RPC:

Número: Nome: Página 1 de 7. Duração da prova: 1h30m. Grupo I [7] Considere o seguinte excerto (incompleto) de um programa cliente em SUN RPC: Número: Nome: Página 1 de 7 LEIC/LETI 2016/17, Repescagem do 1º Teste de Sistemas Distribuídos 4 de julho de 2017 Responda no enunciado, usando apenas o espaço fornecido. Identifique todas as folhas. Uma

Leia mais

PMR3507 Fábrica digital

PMR3507 Fábrica digital LSA Laboratório de Sistemas de Automação www.pmrlsa.poli.usp.br PMR3507 Fábrica digital Do EDI ao SOA Escola Politécnica da Universidade de São Paulo Departamento de Engenharia Mecatrônica e de Sistemas

Leia mais

Características de Sistemas Distribuídos

Características de Sistemas Distribuídos Tópicos O conceito de Características de Carlos Ferraz cagf@cin.ufpe.br Infra-estrutura básica Exemplos Vantagens e desvantagens Convergência digital Características 2002-2003 Carlos A. G. Ferraz 2 O Conceito

Leia mais

Alcides Pamplona

Alcides Pamplona Alcides Pamplona alcides.pamplona@gmail.com Objetivos Gerais Capacitar o aluno a compreender os paradigmas dos Bancos de Dados Distribuídos, visando sua aplicação na análise e projeto de bancos de dados

Leia mais

Aula 7 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MULTI PLAYER. Marcelo Henrique dos Santos

Aula 7 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MULTI PLAYER. Marcelo Henrique dos Santos Aula 7 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MULTI PLAYER Marcelo Henrique dos Santos Marcelo Henrique dos Santos Mestrado em Educação (em andamento) MBA em Negócios em Mídias Digitais MBA em Marketing e

Leia mais

Unidade 3: Classes em Java Para Programadores C Classes, Objetos e Tratamento de Erros Prof. Daniel Caetano

Unidade 3: Classes em Java Para Programadores C Classes, Objetos e Tratamento de Erros Prof. Daniel Caetano Programação Servidor em Sistemas Web 1 Unidade 3: Classes em Java Para Programadores C Classes, Objetos e Tratamento de Erros Prof. Daniel Caetano Objetivo: Apresentar resumidamente os conceitos de classes,

Leia mais

Arquitetura Cliente-Servidor Generalizada com identificação de tiers. Arquitetura Cliente-Servidor Generalizada com identificação de tiers

Arquitetura Cliente-Servidor Generalizada com identificação de tiers. Arquitetura Cliente-Servidor Generalizada com identificação de tiers Projeto de Sistemas Distribuídos Prof João Paulo A Almeida (@infufesbr) Projeto de Sistemas Distribuídos Até agora consideramos apenas a infraestrutura para a construção de aplicações distribuídas (middleware)

Leia mais

Processos ca 3 pítulo

Processos ca 3 pítulo Processos capítulo 3 Introdução: Threads Para executar um programa, o sistema operacional cria um determinado números de processos virtuais. O sistema operacional mantém uma tabela de processos que contém

Leia mais

Replicação em sistemas web

Replicação em sistemas web Sistemas Distribuídos maio de 2015 Servidores Web tolerância a falhas desempenho/escalabilidade desempenho: uso de servidores mais potentes (scale-up x scale-out) caching Servidores Web tolerância a falhas

Leia mais

Grupo I [7v] b) [0,3] Em que componente do sistema de RPC será utilizado o campo identificador de operação?

Grupo I [7v] b) [0,3] Em que componente do sistema de RPC será utilizado o campo identificador de operação? Número: Nome: Página 1 de 7 LEIC/LETI 2013/14, 1º Teste de Sistemas Distribuídos, 29 de Março de 2014 Responda no enunciado, apenas no espaço fornecido. Identifique todas as folhas. Duração: 1h30m Grupo

Leia mais

contidos na descrição do serviço para localizar, contactar e chamar o serviço. A figura mostra os componentes e a interação entre eles.

contidos na descrição do serviço para localizar, contactar e chamar o serviço. A figura mostra os componentes e a interação entre eles. Web Services Web Service é um componente de software identificado por uma URI que independe de implementação ou de plataforma e pode ser descrito, publicado e invocado sobre uma rede por meio de mensagens

Leia mais

Banco de Dados I Curso: Sistemas de Informação

Banco de Dados I Curso: Sistemas de Informação Banco de Dados I Curso: Sistemas de Informação Prof.: José Ronaldo Leles Júnior Email.: juniorleles80@gmail.com Alguns aspectos da arquitetura dos computadores têm influência na arquitetura do banco de

Leia mais

LEIC-T LERC MEIC-T 2011/2012 1º Semestre Programação com Objetos 2012/01/07 11h00m 3/10

LEIC-T LERC MEIC-T 2011/2012 1º Semestre Programação com Objetos 2012/01/07 11h00m 3/10 2/10 1.1. (1.5 val.) Os mecanismos de herança entre classes e de composição de objetos são, por vezes, apresentados como alternativos, face à disponibilização de funcionalidade a uma classe. Compare-os,

Leia mais

RMI e RPC. RPC significou um passo muito grande em direcção à

RMI e RPC. RPC significou um passo muito grande em direcção à Sumário RMI Conceito. Arquitectura de Implementação. Java RMI Características. Interfaces e Objectos Remotos JVM e Java RMI. Passagem de Argumentos e Serialização. Class Downloading. 1 RMI e RPC RPC significou

Leia mais

GRADE HORÁRIA 2º SEMESTRE DE 2017

GRADE HORÁRIA 2º SEMESTRE DE 2017 1º PERÍODO/SEMESTRE # TURNO Noite # SALA # Nº DE ALUNOS HORÁRIO 2ª-FEIRA 3ª-FEIRA 4ª-FEIRA 6ª-FEIRA SÁBADO Lógica Computacional e Lógica Computacional e Português Metodologia Aplicativos em Nuvem Instrumental

Leia mais

Common Object Request Broker Architecture

Common Object Request Broker Architecture Common Object Request Broker Architecture OMG: Object Management Group. Organização internacional, sem fins lucrativos, fundada em 1989. Mais de 800 membros (incluindo fabricantes de sistemas, produtores

Leia mais

7.1 Trabalhos Relacionados

7.1 Trabalhos Relacionados 7 Conclusões O desenvolvimento de aplicações adaptáveis traz novos desafios em relação ao desenvolvimento de software convencional. Em parte, isso está relacionado às diferentes características das diversas

Leia mais

Sistemas Distribuídos Aspectos de Projeto de SD. Aspectos de Projeto em SD. Transparência 14/03/12. ! Transparência; ! Abertura; !

Sistemas Distribuídos Aspectos de Projeto de SD. Aspectos de Projeto em SD. Transparência 14/03/12. ! Transparência; ! Abertura; ! Sistemas Distribuídos Aspectos de Projeto de SD Prof. Msc. André Luiz Nasserala Pires nassserala@gmail.com Aspectos de Projeto em SD! Transparência;! Abertura;! ;! Heterogeneidade;! Segurança;! Tratamento

Leia mais

FACULDADE DE CIÊNCIA DE ENGENHARIA DE SOFTWARE MATRIZ CURRICULAR DO CURSO DE ENGENHARIA DE SOFTWARE PRIMEIRO PERÍODO SEGUNDO PERÍODO

FACULDADE DE CIÊNCIA DE ENGENHARIA DE SOFTWARE MATRIZ CURRICULAR DO CURSO DE ENGENHARIA DE SOFTWARE PRIMEIRO PERÍODO SEGUNDO PERÍODO FACULDADE DE CIÊNCIA DE ENGENHARIA DE SOFTWARE MATRIZ CURRICULAR DO CURSO DE ENGENHARIA DE SOFTWARE PRIMEIRO PERÍODO ESW200 Introdução à Engenharia de Software 2 36 30 - ESW201 Prática de Programação I

Leia mais

Características de Sistemas Distribuídos

Características de Sistemas Distribuídos Características de Sistemas Distribuídos Carlos Ferraz cagf@cin.ufpe.br 2002-2003 Carlos A. G. Ferraz 2 Tópicos O conceito de Sistemas Distribuídos Infra-estrutura básica Exemplos Vantagens e desvantagens

Leia mais

Sistema Distribuído. Sistema Distribuído. Aplicações Distribuídas. Conceitos Básicos

Sistema Distribuído. Sistema Distribuído. Aplicações Distribuídas. Conceitos Básicos Sistema Distribuído Conjunto de máquinas (CPU + memória) interligadas em rede. Sistema Distribuído Sistema operacional distribuído trata este conjunto como um único sistema computacional. Estação 1 Estação

Leia mais

Arquiteturas. capítulo

Arquiteturas. capítulo Arquiteturas capítulo 2 Modelos de arquitetura de sistemas distribuídos Clientes realizam pedidos a servidores Client invocation invocation Server result Server result Client Key: Process: Computer: Modelos

Leia mais

Programação Concorrente com Thread Java. Luiz Affonso Guedes Sistemas Distribuidos

Programação Concorrente com Thread Java. Luiz Affonso Guedes Sistemas Distribuidos Programação Concorrente com Thread Java Luiz Affonso Guedes Sistemas Distribuidos Definições Básicas Threads são sub-procesos no sistema operacional. É menos custoso gerenciar threads do que processos.

Leia mais

Num sistema de objectos distribuídos, dois conceitos são fundamentais.

Num sistema de objectos distribuídos, dois conceitos são fundamentais. Folha 9-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

Leia mais

Model Driven Development (MDD)

Model Driven Development (MDD) Model Driven Development (MDD) Mestrado em Engenharia de Produção e Sistemas Computacionais Profa. Adriana Pereira de Medeiros adrianamedeiros@puro.uff.br Sumário Introdução Desenvolvimento de Software

Leia mais

Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS. Marcelo Henrique dos Santos

Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS. Marcelo Henrique dos Santos Aula 4 TECNOLOGIA EM JOGOS DIGITAIS JOGOS MASSIVOS DISTRIBUÍDOS Marcelo Henrique dos Santos Marcelo Henrique dos Santos Email: Site: marcelosantos@outlook.com www.marcelohsantos.com.br TECNOLOGIA EM JOGOS

Leia mais

Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça. Padrão Observer (Observador)

Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça. Padrão Observer (Observador) Universidade Federal de Uberlândia Faculdade de Computação Programação Orientada a Objetos II Prof. Fabiano Dorça Problema: Definir uma dependência um-para-muitos entre objetos, de forma quando o estado

Leia mais

SISTEMAS OPERACIONAIS DE REDE

SISTEMAS OPERACIONAIS DE REDE SISTEMAS OPERACIONAIS DE REDE Questão 01 O sistema operacional gerencia o sistema de arquivos, que irá armazenar as informações/arquivos. Para esta tarefa, durante a formatação do disco rígido, são criados

Leia mais

Singleton e Adapter. Professor: Nazareno Andrade (baseado no material de Hyggo Almeida e Jacques Sauvé)

Singleton e Adapter. Professor: Nazareno Andrade (baseado no material de Hyggo Almeida e Jacques Sauvé) e Adapter Professor: Nazareno Andrade (baseado no material de Hyggo Almeida e Jacques Sauvé) O que vimos na última aula? Factory Method Abstract Factory 2 O que veremos hoje? (padrão de criaçã) Adapter

Leia mais

Quando Distribuir é bom

Quando Distribuir é bom Quando Distribuir? Se não precisar, não distribua. Problema de natureza descentralizada Rede de manufatura com atividades concorrentes de engenharia em locações remotas; Teleconferência; Automação industrial.

Leia mais

Replicação em sistemas web

Replicação em sistemas web Sistemas Distribuídos abril de 2018 Servidores Web tolerância a falhas desempenho/escalabilidade desempenho: uso de servidores mais potentes (scale-up x scale-out) caching uso de servidores replicados

Leia mais

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Bacharelado em Sistemas de Informação. Processamento Paralelo Threads. Aluno: Wagner Palacio

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Bacharelado em Sistemas de Informação. Processamento Paralelo Threads. Aluno: Wagner Palacio UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO Bacharelado em Sistemas de Informação Processamento Paralelo Threads Aluno: Wagner Palacio Turma: 3º período Professor: Giordano Cabral Recife, 29 de maio de 2012

Leia mais

Engenharia de Confiança. Helena Macedo Reis Luis Fernando de Souza Moro

Engenharia de Confiança. Helena Macedo Reis Luis Fernando de Souza Moro Engenharia de Confiança Helena Macedo Reis Luis Fernando de Souza Moro 1 Engenharia de Confiança Preocupada com técnicas que aumentam a confiança e diminui os riscos de falhas Falha pode causar perda de

Leia mais

Palavras-chave: (banco de dados; prontuário médico; paciente); deve vir logo abaixo do resumo

Palavras-chave: (banco de dados; prontuário médico; paciente); deve vir logo abaixo do resumo BANCO DE DADOS PARA UM PRONTUÁRIO MÉDICO ELETRÔNICO Nome dos autores: Igor Barreto Rodrigues¹; Patrick Letouze Moreira² 1 Aluno do Curso de Ciência da Computação; Campus de Palmas; e-mail: igor.cientista@uft.edu.br

Leia mais

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos

Programação Orientada a Objetos. Vagner Luz do Carmo - Vluzrmos Programação Orientada a Objetos Vagner Luz do Carmo - Vluzrmos Questão 1 Dada a seguinte classe na linguagem JAVA: public class Carro { public String retornacor(){ ; return Azul ; private String retornachassi(){

Leia mais

COMPUTAÇÃO DISTRIBUÍDA

COMPUTAÇÃO DISTRIBUÍDA COMPUTAÇÃO DISTRIBUÍDA INTRODUÇÃO Carlos Ferraz MOTIVAÇÃO Computação em evolução Antes disso Sistemas de Software (Aplicações) Infraestrutura de Software Infraestrutura de Hardware Infraestrutura

Leia mais

Arquitetura da World Wide Web. WWW: Histórico. WWW: Usos. WWW: Histórico. WWW Tecnologias Fundamentais. Comércio Eletrônico na WWW

Arquitetura da World Wide Web. WWW: Histórico. WWW: Usos. WWW: Histórico. WWW Tecnologias Fundamentais. Comércio Eletrônico na WWW Arquitetura da World Wide Web World Wide Web Sistema de informação em escala global acessível em tempo real através de redes de computadores como a Internet. Comércio Eletrônico na WWW Wagner Meira Jr.,

Leia mais

Tratamento de Exceção. Programação Orientada a Objetos Java (Rone Ilídio)

Tratamento de Exceção. Programação Orientada a Objetos Java (Rone Ilídio) Tratamento de Exceção Programação Orientada a Objetos Java (Rone Ilídio) Tratamento de exceção Exceção é uma contração de Evento de Exceção Evento de exceção impede a execução normal de um programa Quando

Leia mais

ESCOLA POLITÉCNICA DA UNIVERSIDADE DE SÃO PAULO

ESCOLA POLITÉCNICA DA UNIVERSIDADE DE SÃO PAULO 5. Requisitos do Sistema No: 01 ( X ) Funcional ( ) Não funcional Requisito: Armazenamento Descrição: O sistema deve permitir o armazenamento de experimentos de biodiversidade produzidos no openmodeller.

Leia mais

Vamos fazer um pequeno experimento

Vamos fazer um pequeno experimento 1 Vamos fazer um pequeno experimento Dividam-se em dois grupos: Mestre Escravo Projeto de Sistemas Distribuídos Comunicação entre Processos Prof. Msc. Marcelo Iury de Sousa Oliveira marceloiury@gmail.com

Leia mais

Protótipo tipo de um ambiente virtual distribuído

Protótipo tipo de um ambiente virtual distribuído Universidade Regional de Blumenau Centro de Ciências Exatas e Naturais Departamento de Sistemas e Computação Protótipo tipo de um ambiente virtual distribuído do multiusuário Acadêmico: Leonardo Willrich

Leia mais

Sistemas de Informação. Sistemas Operacionais

Sistemas de Informação. Sistemas Operacionais Sistemas de Informação Sistemas Operacionais PROCESSOS E THREADS PARTE II SUMÁRIO 3. THREAD: 3.1 Introdução; 3.2 Ambiente Monothread; 3.3 Ambiente Multithread; 3.4 Arquitetura e Implementação; 3.5 Modelos

Leia mais

Rede de computadores Cliente- servidor. Professor Carlos Muniz

Rede de computadores Cliente- servidor. Professor Carlos Muniz Rede de computadores Professor Carlos Muniz Definição Cliente-servidor é um modelo computacional que separa clientes e servidores, sendo interligados entre si geralmente utilizando-se uma rede de computadores.

Leia mais

Recapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... }

Recapitulando. Construtores: (Overload assinatura) public Circle() {...} public Circle(double x, double y, double r) {... } Recapitulando Orientação a objetos: programas organizados em torno da definição de classes, instanciação de objetos e troca de mensagens. Declaração de variáveis de referencia: Circle c; Criação/instanciação

Leia mais

Processamento distribuído em ambiente peer-to-peer

Processamento distribuído em ambiente peer-to-peer Processamento distribuído em ambiente peer-to-peer Alexandre Helfrich Orientando Prof. Paulo Fernando da Silva Orientador Roteiro Introdução e Objetivos Fundamentação Teórica, Conceitos e Contexto Atual

Leia mais

Sistemas de Objetos DistribuídosPrimeira Aplicação Java ORB p.1/21

Sistemas de Objetos DistribuídosPrimeira Aplicação Java ORB p.1/21 Sistemas de Objetos Distribuídos Primeira Aplicação Java ORB Francisco José da Silva e Silva Departamento de Informática da Universidade Federal do Maranhão Sistemas de Objetos DistribuídosPrimeira Aplicação

Leia mais

Um Servidor HTTP/2 Reativo em Scala

Um Servidor HTTP/2 Reativo em Scala Um Servidor HTTP/2 Reativo em Scala Trabalho de Conclusão de Curso - BCC 2015 Daniel Q. Miranda Orientador: Prof. Dr. Daniel Macêdo Batista HyperText Transfer Protocol HTTP

Leia mais

Um Protótipo de Servidor Multimídia com Mecanismos de QoS

Um Protótipo de Servidor Multimídia com Mecanismos de QoS Um Protótipo de Servidor Multimídia com Mecanismos de QoS Laboratório de Modelagem, Análise e Desenvolvimento de Sistemas de Computação e Comunicação - LAND COPPE/UFRJ Autores Adriane de Quevedo Cardozo

Leia mais

Universidade Federal do Maranhão

Universidade Federal do Maranhão Universidade Federal do Maranhão Banco de Dados II Banco de Dados Distribuídos Carlos Eduardo Portela Serra de Castro * Sumário Introdução Vantagens Projeto de Bases de Dados Distribuídas Classificação

Leia mais

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS INF1636 PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Ivan Mathias Filho ivan@inf.puc-rio.br Programa Capítulo 3 Ponteiros e Variáveis de Objeto Construtores e Blocos de Inicialização

Leia mais

O que se espera para o futuro dos Web Services? As tecnologias são respectivamente JSON e REST.

O que se espera para o futuro dos Web Services? As tecnologias são respectivamente JSON e REST. Web Services Por que os Web Services são atrativos para a integração de sistemas? Pois os Web services são componentes que possibilitam que as aplicações se comuniquem utilizando protocolos padrão da internet

Leia mais

Adaptação Dinâmica desistemas Distribuídos p.1/54

Adaptação Dinâmica desistemas Distribuídos p.1/54 Adaptação Dinâmica de Sistemas Distribuídos Francisco José da Silva e Silva Orientadores: Prof. Dr. Markus Endler Prof. Dr. Fabio Kon Instituto de Matemática e Estatística da Universidade de São Paulo

Leia mais

Organização de Computadores II. Arquiteturas MIMD

Organização de Computadores II. Arquiteturas MIMD Organização de Computadores II Arquiteturas MIMD Arquiteturas UMA Arquiteturas com memória única global. Tempo de acesso uniforme para todos os nós de processamento. Nós de processamento e memória interconectados

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Motivação Aplicações Motivam Possibilita Engenharia Motivação! Aplicações cada vez mais complexas! Qual a técnica mais comum para redução de complexidade? " Modularização Dividir

Leia mais

Interfaces e Classes Internas

Interfaces e Classes Internas e Classes Internas SCC0604 - Programação Orientada a Objetos Prof. Fernando V. Paulovich http://www.icmc.usp.br/~paulovic paulovic@icmc.usp.br Instituto de Ciências Matemáticas e de Computação (ICMC) Universidade

Leia mais

Thread. Thread. Sistemas Operacionais. Leonard B. Moreira. UNIVERSIDADE ESTÁCIO DE SÁ fevereiro, / 41

Thread. Thread. Sistemas Operacionais. Leonard B. Moreira. UNIVERSIDADE ESTÁCIO DE SÁ   fevereiro, / 41 Thread Sistemas Operacionais Leonard B. Moreira UNIVERSIDADE ESTÁCIO DE SÁ e-mail: leonardbarreto@gmail.com.br fevereiro, 2013 1 / 41 Sumário 1 Introdução 2 Ambientes Monothread 3 Ambientes Multithread

Leia mais

PROVIDING DEPENDABILITY FOR WEB SERVICES

PROVIDING DEPENDABILITY FOR WEB SERVICES PROVIDING DEPENDABILITY FOR WEB SERVICES Dário Lima Pedro Venâncio a16435 m2610 Sistemas Distribuídos e Tolerância a Falhas 1 Esta tecnologia tem como finalidade proporcionar interoperabilidade para aplicações

Leia mais

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS

INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS INF1337 LINGUAGEM DE PROGRAMAÇÃO ORIENTADA A OBJETOS Departamento de Informática PUC-Rio Andrew Diniz da Costa andrew@les.inf.puc-rio.br Programa Capítulo 3 Ponteiros e Variáveis de Objeto Construtores

Leia mais

Chamada Remota de Procedimento (RPC)

Chamada Remota de Procedimento (RPC) Chamada Remota de Procedimento (RPC) cont semântica de chamadas pelo menos uma vez no máximo uma vez exatamente uma vez relação com protocolo subjacente falhas e reinicializações de servidores funções

Leia mais