Sie sind auf Seite 1von 6

Carlos A. G.

Ferraz 25/6/2003

Tópicos

O conceito de Sistemas Distribuídos


Infra-estrutura básica
Características de
Exemplos
Sistemas Distribuídos Vantagens e desvantagens
Carlos Ferraz Convergência digital
cagf@cin.ufpe.br Características

© 2002-2003 Carlos A. G. Ferraz 2

A infra-estrutura básica para


O Conceito de Sistema Distribuído
Sistemas Distribuídos
“Coleção de “Um sistema em que Rede
computadores componentes de hardware
e software localizados em Com fio: velozes e confiáveis
independentes que computadores em rede se Sem fio: cada vez mais velozes e ainda pouco
aparecem para os comunicam e coordenam
confiáveis
usuários do sistema suas ações por passagem
como um único de mensagens.” (Coulouris
et al)
Hardware
computador.”
(Tanenbaum) Software
! Vários componentes
! Conectados via uma rede
! Compartilhando recursos

© 2002-2003 Carlos A. G. Ferraz 3 © 2002-2003 Carlos A. G. Ferraz 4

Sistemas Distribuídos Sistemas Distribuídos


Do ponto de vista de hardware
Do ponto de vista de hardware
Multicomputadores, com memória privada
Multiprocessadores, com memória compartilhada
Máquina A Máquina B Máquina C
Tanenbaum and van Steen. Distributed Systems: Principles and Paradigms

Aplicações Distribuídas
© Prentice Hall 2002

Sistema Sistema Sistema


Operacional Operacional Operacional

rede

© 2002-2003 Carlos A. G. Ferraz 5 © 2002-2003 Carlos A. G. Ferraz 6

Sistemas Distribuídos 1
Carlos A. G. Ferraz 25/6/2003

Sistemas Distribuídos Sistemas Operacionais de Rede

Do ponto de vista de software

Tanenbaum and van Steen. Distributed Systems: Principles and Paradigms


Sistemas operacionais de rede (SOR)
Exs.: Unix, Windows NT, 2000, XP
Sistemas operacionais distribuídos (SOD)

© Prentice Hall 2002


Exs.: Chorus, Mach, Amoeba
Middleware
Exs.: Java RMI, DCOM/MS, CORBA/OMG

© 2002-2003 Carlos A. G. Ferraz 7 © 2002-2003 Carlos A. G. Ferraz 8

Sistemas Operacionais Distribuídos Middleware

Tanenbaum and van Steen. Distributed Systems: Principles and Paradigms


© Prentice Hall 2002
Tanenbaum and van Steen. Distributed Systems: Principles and Paradigms
© Prentice Hall 2002

© 2002-2003 Carlos A. G. Ferraz 9 © 2002-2003 Carlos A. G. Ferraz 10

Middleware: Exemplos Middleware e Abertura


Tanenbaum and van Steen. Distributed Systems: Principles and Paradigms

Java RMI
Transparência de SO, graças à JVM (Java Virtual
Machine)
© Prentice Hall 2002

Restrito à programação em Java


1.23
DCOM
Transparência de linguagem de programação
(LP), mas dependente de SO (Windows)
CORBA
Em um SD baseado em middleware aberto, os protocolos
Transparência de SO Palavra-chave: usados por cada camada middleware devem ser os mesmos,
Transparência de LP Transparência assim como as interfaces (de comunicação) que eles
apresentam às aplicações

© 2002-2003 Carlos A. G. Ferraz 11 © 2002-2003 Carlos A. G. Ferraz 12

Sistemas Distribuídos 2
Carlos A. G. Ferraz 25/6/2003

Exemplo: Sistema de Fluxo de


Conceitos de Software
Trabalho (Workflow)

Sistema Descrição
Principal Aplicação: processamento automático de
objetivo
encomendas
SO fortemente acoplado para Esconder e
SOD multiprocessadores e gerenciar recursos O sistema é usado por várias pessoas de
multicomputadores homogêneos de hardware diferentes departamentos, possivelmente em
SO fracamente acoplado para Oferecer serviços diferentes locais
SOR multicomputadores heterogêneos (LAN e locais para
WAN) clientes remotos Os usuários finais não sabem que as
encomendas fluem através do sistema; para
Fornecer
Camada adicional no topo de SOR que eles é como se a operação fosse
Middleware transparência de
implementa serviços de propósito geral
distribuição centralizada

© 2002-2003 Carlos A. G. Ferraz 13 © 2002-2003 Carlos A. G. Ferraz 14

Workflow (cont) Web: Um Exemplo de SD?


Servidor
Servidor DNS de Arquivos
Servidor BD
realiza pedido
Depto. de planejamento

pede produto pede conta Servidor DNS Servidor Web


Porta 80

Depto. de Depto. de
Internet
estoque contabilidade Servidor DNS

sincroniza
Cliente
Servidor DNS
envia “browser”
Depto. de carga

© 2002-2003 Carlos A. G. Ferraz 15 © 2002-2003 Carlos A. G. Ferraz 16

Web (cont) Sistemas Distribuídos: Vantagens

Se a WWW aparecesse para os usuários Economia: melhor relação custo/desempenho


como um (gigantesco) sistema de Eficiência: maior poder total de computação
documentos centralizado, seria qualificada
Distribuição inerente: máquinas espacialmente
como um sistema distribuído separadas
Mas os usuários percebem o fato de que Confiabilidade: se uma máquina falha, o sistema
documentos são localizados em lugares como um todo pode ainda sobreviver
diferentes e que são manipulados por Crescimento incremental: poder computacional
diferentes servidores… adicionado em incrementos

© 2002-2003 Carlos A. G. Ferraz 17 © 2002-2003 Carlos A. G. Ferraz 18

Sistemas Distribuídos 3
Carlos A. G. Ferraz 25/6/2003

Sistemas Distribuídos: Desvantagens Convergência Digital


Processamento Comunicações
Pouco software disponível (ainda!)
Networking: a rede pode causar problemas Computação
em rede
Computação Telefonia
Segurança: várias portas de acesso (mas...)
Sistemas
Distribuídos
Software Multimídia Difusão de
& Hardware
para conteúdo
divertimento em rede
& informação
Filmes
Referência
Ficcão Mídia
Música
Notícias

© 2002-2003 Carlos A. G. Ferraz 19 © 2002-2003 Carlos A. G. Ferraz 20

Características Compartilhamento de Recursos (1/3)

Compartilhamento de recursos “Recurso” caracteriza o conjunto de


Abertura elementos que podem ser compartilhados
de forma útil em um SD:
Concorrência
Hw: impressoras, discos
Escalabilidade Sw: arquivos, bancos de dados, compiladores
Robustez
Tolerância a falhas
O compartilhamento reduz custos
Disponibilidade

Transparência

© 2002-2003 Carlos A. G. Ferraz 21 © 2002-2003 Carlos A. G. Ferraz 22

Compartilhamento (2/3) Compartilhamento (3/3)

Recursos fisicamente encapsulados em um Uma interface de comunicação em um


dos computadores de um SD só podem ser Gerenciador de Recursos permite que os mesmos
sejam:
acessados por outros computadores através
acessados
de comunicação
deve haver um Esquema de Nomeação para permitir que
recursos individuais sejam acessados a partir de qualquer
Cada conjunto de recursos de um tipo localização
particular deve ser gerenciado por um mapeamento de nomes de recursos em endereços de
programa (Gerenciador de Recursos) que comunicação
manipulados e atualizados
oferece uma interface de comunicação
há necessidade de sincronização de acesso concorrente
para garantir consistência (Controle de Concorrência)

© 2002-2003 Carlos A. G. Ferraz 23 © 2002-2003 Carlos A. G. Ferraz 24

Sistemas Distribuídos 4
Carlos A. G. Ferraz 25/6/2003

Abertura Concorrência

Determina se um SD pode ser estendido de várias Concorrência e execução paralela existem


maneiras: em um SD por causa de:
extensão por hardware
as atividades separadas de usuários,
extensão por software
a independência de recursos e
sem a interrupção ou duplicação de serviços
a localização de processos em computadores
existentes
separados
Conseguida através da publicação de interfaces,
tornando-as disponíveis para desenvolvedores de
software
UNIX é um exemplo de um sistema aberto

© 2002-2003 Carlos A. G. Ferraz 25 © 2002-2003 Carlos A. G. Ferraz 26

Problemas de Escalabilidade Escalabilidade

Filosofia de projeto: se a demanda por um


Conceito Exemplo recurso aumentar, deve ser possível estender
o sistema para atender à mesma
Serviços centralizados Um único servidor para todos os usuários
SDs devem ser capazes de operar efetiva e
Dados centralizados Uma única lista telefônica on-line
eficientemente em escalas diferentes
Algoritmos centralizados Roteamento baseado em informação completa
Sw de sistema e aplicação não precisam
mudar quando a escala do sistema muda
Exemplos de limitações de escalabilidade O processamento deve ser independente
do tamanho da rede

© 2002-2003 Carlos A. G. Ferraz 27 © 2002-2003 Carlos A. G. Ferraz 28

Tolerância a Falha Disponibilidade

Em um SD, o hardware essencial para a operação Quando um componente falha em um SD,


contínua de aplicações críticas pode ser replicado apenas a parte que usa este componente é
este hw redundante pode ser usado para atividades não-
críticas quando não há falhas
afetada; além disso, o componente pode
ser re-inicializado em outro computador
O software pode ser projetado para recuperar o
estado de dados permanentes quando uma falha é "Um SD tem mais partes disponíveis por mais
detectada tempo
Tipos de falha
Transiente: pode acontecer uma vez
Intermitente: acontece de tempos em tempos
Permanente: acontece sempre

© 2002-2003 Carlos A. G. Ferraz 29 © 2002-2003 Carlos A. G. Ferraz 30

Sistemas Distribuídos 5
Carlos A. G. Ferraz 25/6/2003

Transparência

Esconde do usuário e do programador de


aplicação a separação de componentes
em um SD
O sistema é percebido como um todo, em
vez de uma coleção de componentes
independentes
Tipos mais comuns de transparência
Localização
Acesso

© 2002-2003 Carlos A. G. Ferraz 31

Sistemas Distribuídos 6

Das könnte Ihnen auch gefallen