Carlos Ferraz cagf@cin.ufpe.br



Documentos relacionados
Modelos Arquiteturais

Sistemas Operacionais Abertos. Prof. MSc. André Yoshimi Kusumoto

Camadas de Serviço de Hardware e Software em Sistemas Distribuídos. Introdução. Um Serviço Provido por Múltiplos Servidores

Capítulo II Modelos de Programação Distribuída (parte 2)

Aula 03-04: Modelos de Sistemas Distribuídos

Sistemas Distribuídos

SISTEMAS DISTRIBUÍDOS

SISTEMAS DISTRIBUIDOS E PARALELOS 2014/2015 1º SEMESTRE

Sistemas Distribuídos

Middleware. Camada Intermediária de Suporte a Sistemas Distribuídos

Sistemas Operacionais Abertos. Prof. MSc. André Yoshimi Kusumoto

PADI Plataformas para Aplicações Distribuídas na Internet

Modelos Fundamentais. Carlos Ferraz.

Arquitetura de um sistema é a especificação de sua estrutura e de seus componentes

UNIVERSIDADE LUSÍADA DE LISBOA. Programa da Unidade Curricular SISTEMAS DISTRIBUIDOS Ano Lectivo 2015/2016

Camadas de Software - o Middleware. Sistemas Distribuídos Capítulo 2: Modelos e Arquitecturas. Aplicações. Middleware.

Sistemas Distribuídos (DCC/UFRJ)

SISTEMAS DISTRIBUIDOS

Distributed Systems Principles and Paradigms

Definição São sistemas distribuídos compostos de nós interconectados, aptos a se auto-organizar em topologias de rede, com o intuito de compartilhar

Sistemas Distribuídos. Introdução. Edeyson Andrade Gomes.

Comunicação. Parte II

Introdução. Sistemas Distribuídos. Mas, o que é um sistema distribuído? Seriamente. Professor: Paulo Jorge Marques. Professora Práticas: Pinki Meggi

Sistemas Distribuídos

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

Definição São sistemas distribuídos compostos de nós interconectados, aptos a se auto-organizar em topologias de rede, com o intuito de compartilhar

Arquitectura de Sistemas Paralelos e Distribuídos Modelos de Sistemas

Capítulo VI CORBA. Common Object Request Broker Architecture. [Cardoso2008] Programação de Sistemas Distribuídos em Java, Jorge Cardoso, FCA, 2008.

Arquitetura dos Sistemas de Informação Distribuídos

Sistemas Distribuídos

PEER DATA MANAGEMENT SYSTEM

Padrões Arquiteturais e de Integração - Parte 1

Arquiteturas de Sistemas Distribuídos

Sistemas Distribuídos

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

GUIA DE FUNCIONAMENTO DA UNIDADE CURRICULAR

Princípios de Sistemas Distribuídos. Tecnologias utilizadas em sistemas distribuídos Aula 5

Introdução. Definição de um Sistema Distribuído (1) Definição de um Sistema Distribuído(2) Metas de Sistemas Distribuídos (2)

Sistema centralizado O Paradigma Cliente/Servidor

Programação Distribuída

UNIVERSIDADE LUSÍADA DE LISBOA. Programa da Unidade Curricular SISTEMAS DISTRIBUÍDOS Ano Lectivo 2012/2013

BANCO DE DADOS DISTRIBUÍDOS e DATAWAREHOUSING

Sistemas Distribuídos. Ricardo Ribeiro dos Santos

Curso de Preservação Digital

Introdução ao Modelos de Duas Camadas Cliente Servidor

SISTEMAS DISTRIBUÍDOS

Gestão de Projectos de Software - 1


UFG - Instituto de Informática

Modelos de Sistemas Distribuídos. . Requerimentos de Projeto para Arquiteturas Distribuídas

Banco de Dados Arquiteturas para SGBDs

Sistemas Distribuídos

1

Sistemas Distribuídos

Resumo. Introdução História Caracteristicas Exemplos Arquitetura Distribuição Vertical vs Distribuição Horizontal Segurança Conclusão

INE Sistemas Distribuídos

ARQUITETURAS DOS SISTEMAS DE EMPRESARIAIS (ERP) Arquitetura cliente-servidor Arquitetura aberta

Sistemas Distribuídos. Modelos Arquiteturais

Modelos de Arquiteturas. Prof. Andrêza Leite

Cap. 02 Arquiteturas de Sist. Distribuídos

OBJETOS DISTRIBUÍDOS E INVOCAÇÃO REMOTA

Redes de Computadores e a Internet

Projeto de Sistemas Distribuídos. Prof. Andrêza Leite

Redes de Computadores Aula 3

Distributed Systems Concepts and Design

Web Services. (Introdução)

Capítulo V Sistemas de Objectos Distribuídos

SISTEMA GERENCIADOR DE BANCO DE DADOS

EDITAL Nº 204/2014-PROG/UEMA

Sistemas Distribuídos - SDI. Caracterização de Sistemas Distribuídos.. Exemplos de Sistemas Distribuídos

Sistemas Distribuídos

Sistema de Software Distribuído

JSensor: Uma plataforma paralela e distribuída para simulações de redes de sensores

Paradigma Cliente/Servidor

SISTEMAS DISTRIBUÍDOS

Transcrição:

Modelos Arquiteturais Carlos Ferraz cagf@cin.ufpe.br

Tópicos da Aula! Cliente-servidor! Peer processes (P2P)! Objetos distribuídos 2003 Carlos A. G. Ferraz 2

O que é um modelo arquitetural?! Estrutura em termos de componentes especificados separadamente! Alocação de componentes em uma rede de computadores! Interrelações de componentes! Divisão de responsabilidades entre componentes 2003 Carlos A. G. Ferraz 3

Arquiteturas

Modelo Cliente-Servidor Clientes invocando servidores individuais Client invocation invocation Server result Server result Client Key: Process: Computer: Instructor s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 Addison-Wesley Publishers 2000 2003 Carlos A. G. Ferraz 5

Arquitetura Cliente-Servidor Clients Clients Service invocation Server invocation Results Results invocation invocation Results Results Servidor Único Múltiplos Servidores 2003 Carlos A. G. Ferraz 6

Clintes magros e gordos Thin-client model Client Presentation Server Data management Application processing Fat-client model Client Presentation Application processing Server Data management Software Engineering, 6 th Edition Chapter 11 Ian Sommerville 2000 2003 Carlos A. G. Ferraz 7

Arquitetura C/S 3-tier Presentation Server Server Client Application processing Data management Software Engineering, 6 th Edition Chapter 11 Ian Sommerville 2000 2003 Carlos A. G. Ferraz 8

Arquiteturas Multitiered Tanenbaum and van Steen. Distributed Systems: Principles and Paradigms Prentice Hall 2002 2003 Carlos A. G. Ferraz 9

Arquitetura de Peer processes (Peer-to-Peer) Application Coordination code Application Coordination code Application Coordination code Instructor s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 Addison-Wesley Publishers 2000 2003 Carlos A. G. Ferraz 10

P2P Centralized: Napster! Napster used centralized servers to keep a catalog of available files. 1. User sends out request Napster searches central database user Search request Search response Napster server user 2. The central server sends back a list of available files for download Download from user user user 3. Requesting user downloads the file directly from another Napster user computer 2003 Carlos A. G. Ferraz 11

P2P Decentralized: Gnutella Partial Map of the Gnutella Network http://dss.clip2.com http://www.limewire.com See also gnutellavision: Real Time Visualization of a Peer to Peer Network http://www.sims.berkeley.edu/~rachna/courses/infoviz/gtv/paper.html 2003 Carlos A. G. Ferraz 12

Exemplo de um SD em um hotel Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 Addison-Wesley Publishers 2000 Spontaneous Networking Internet Discovery service gateway TV/PC Music service Características fundamentais: fácil conexão à rede local fácil integração com serviços locais Usuários móveis: conectividade limitada Hotel wireless segurança e privacidade Um serviço network de descoberta oferece duas interfaces: registration service: usado por servidores lookup service: usado por clientes Laptop PDA Alarm service Camera Guests devices 2003 Carlos A. G. Ferraz 13

Objetos Distribuídos! Uma aplicação distribuída pode ser vista como um conjunto de objetos! Objetos: " Consistem de dados + código " Podem ser clientes, servidores ou ambos " Interface esconde detalhes de implementação " Modelar com objetos não implica no uso de programação orientada a objetos 2003 Carlos A. G. Ferraz 14

Objetos Distribuídos Tanenbaum and van Steen. Distributed Systems: Principles and Paradigms Prentice Hall 2002 Interface local Objeto remoto! Observe a separação entre interface e objeto 2003 Carlos A. G. Ferraz 15

Arquitetura de Objetos Distribuídos o1 o2 o3 o4 S (o1) S (o2) S (o3) S (o4) Software bus o5 o6 Software Engineering, 6 th Edition Chapter 11 Ian Sommerville 2000 S (o5) S (o6)! Middleware: " Object brokers: permitem que objetos se encontrem em um sistema distribuído, e interajam uns com os outros " Object services: permitem criar, nomear, mover, armazenar e gerenciar objetos 2003 Carlos A. G. Ferraz 16

Ligação (Binding) Cliente-Objeto! Ligação implícita Distr_object* obj_ref; obj_ref = ; obj_ref-> do_something(); // Declare a systemwide object reference // Initialize the reference to a distributed object // Implicitly bind and invoke a method! Ligação explícita Distr_object objpref; Local_object* obj_ptr; obj_ref = ; obj_ptr = bind(obj_ref); obj_ptr -> do_something(); // Declare a system-wide object reference // Declare a pointer to local objects // Initialize the reference to a distributed object // Explicitly bind and obtain pointer to local proxy // Invoke a method on the local proxy Tanenbaum and van Steen. Distributed Systems: Principles and Paradigms Prentice Hall 2002 2003 Carlos A. G. Ferraz 17

Comentários finais! O uso de objetos distribuídos melhora a capacidade de manutenção e adaptabilidade de um sistema! Arquiteturas cliente-servidor fornecem uma infra-estrutura versátil que suporta a inserção de novas tecnologias mais rapidamente! Arquiteturas de software cliente-servidor têm sido usadas desde os anos 80 maturidade! Um número de tradeoffs deve ser considerado para selecionar a arquitetura mais apropriada, incluindo: " O crescimento potencial do número de usuários, " Custo e " Homogeneidade do ambiente computacional atual e futuro 2003 Carlos A. G. Ferraz 18