Sistemas Distribudos
Arquiteutra de Sistemas Distribudos
Applications, services
Introduo
Middleware
Adaptao do conjunto de slides do livro
Distributed Systems, Tanembaum, com alguns
slides do livro do Coulouris
Operating system
Platform
Service
Server
Client
Key:
Process: Computer:
Client
Server
1
Servidores Assistidos por um Proxy Aplicao Peer-to-peer
Application Application
Client Web
server Coordination Coordination
code code
Proxy
server
Client Web
server
Application
Coordination
code
a) Cliente interage
client request com in
results o servidor Web e realiza
the downloading o code
of applet
download do cdigo do applet
Compute server
Network computer or PC
Client Web
server
Applet code
Thin network Application
Client Process
Clienteinteracts
b) client interagewith
comthe
o applet localmente
Web
Client Applet server
2
Redes Espontneas Definio de um Sistema Distribudo (1)
Music
service
gateway
Alarm
service Um sistema distribudo :
Internet
TV/PC Guests
Laptop PDA
devices
3
Transparncia em Sistemas Distribudos Problemas de Escalabilidade
Transparncia Descrio
Esconde diferenas na representao de dados e
Acesso
como um recurso acessado
Conceito Exemplo
Localizao Esconde onde um recurso est localizado
Esconde que um recurso pode mover-se para outra Servios centralizados Um nico servidor para todos os usurios
Migrao
localizao
Esconde que um recurso pode ser movido para outra
Relocao Dados centralizados Um nico guia telefnico on-line
localizao enquanto esta sendo usado
Esconde que um recurso pode ser compartilhado por
Replicao Fazer roteamento basedo em informao
vrios usurios concorrentes Algoritmos centralizados
completa
Esconde que um recurso pode ser compartilhado por
Concorrncia
vrios usurios concorrentes
Falha Esconde a falha e recuperao de um recurso
Esconde quando um recurso (software) esta em
Persistncia
memria ou em disco Exemplos das limitaes de escalabilidade.
1.5
1.4
4
Conceitos de Hardware Multiprocessadores e Multicomputadores
1.7
1.8
5
Multicomputador Homogneo Conceitos de Software
Reviso entre:
SOD (DOS - Distributed Operating Systems)
SOR (NOS - Network Operating Systems)
a) Grade (Grid) Middleware
b) Hipercubo
1.11 1.14
6
SO Multicomputador (2) SO Multicomputador (3)
a) Pginas do
espao de
endereamento
distribudas entre
4 mquinas 1.18
b) Situao depois
CPU 1 referecia
pgina 10
c) Situao se
pgina 10
apenas leitura e
replicao usada Falso compartilhamento de pgina entre 2 processos independentes.
7
Sistema Operacional de Rede (1) Sistema Operacional de Rede (2)
1-19 1-20
1-22
1.21
Diferentes clientes podem montar os servidores em diferentes lugares. Estrutura geral de um sistema distribudo com middleware.
8
Middleware Middleware
Servios de Comunicao: abandona primitiva de passagem de
mensagens baseada em sockets em favor de:
chamadas de procedimentos atravs da rede
invocao de mtodos remotos
sistemas de fila de mensagens
comunicao com streams
1.23 servio de notificao de eventos
Servios de sistemas de informao: servios que ajudam
gerenciar dados em SDs:
servios de nomes
servios de diretrio (mquinas de busca)
servios de localizao
cache e replicao
9
Modelo Cliente-Servidor Clientes e Servidores
Questo central na organizao de SDs diz respeito a como
organizar os processos no sistema. Existe uma certa
concordncia em pensar em termos de clientes que requisitam 1.25
servios de servidores.
Modelo bsico
Nveis
Arquiteturas
10
Um exemplo Cliente / Servidor (3) Nvel de Processamento
1-27 b
1-28
1-29 1-30
Arquiteutras alternativas cliente-servidor Exemplo de um servidor intermedirio, agindo como um cliente, delegando a
oprao para outro servidor.
11
Arquiteturas Alternativas Arquiteturas Modernas
Servidores cooperantes: servio esta fisicamente
distribudo em uma coleo de servidores:
arquiteturas multi-tiered tradicionais
sistemas de arquivos replicados
servio de news 1-31
servios de nomes (DNS, X.500)
servios financeiros
12