Sistemas Distribuídos
Artigo: Sistemas Distribuídos. Pesquise 861.000+ trabalhos acadêmicosPor: joaodifiori • 26/5/2014 • 826 Palavras (4 Páginas) • 421 Visualizações
Programação Sistemas Distribuídos.
1
Prof.Fábio Rener
Introdução
Um sistema distribuído é um conjunto de computadores independentes que se
apresenta a seus usuários como um sistema único e coerente.
• Componentes (computadores autônomos);
• Usuários (pessoas ou programas).
Exemplo:
Sistema de pesquisa do Google caracteriza-se por um bom algoritimo e uma série de
maquinas de baixo custo, formando assim um Sistema Distribuído.
Vantagens de Sistemas Distribuídos
• Funcionalidades e capacidades distribuídas
o clientes / servidores
o recolha de informação / processamento
• Domínio da aplicação intrinsecamente distribuído
o caixa de registo e sistema de inventário numa cadeia de
supermercados
o sistema de gestão de dados administrativos numa rede hospitalar
• Desempenho: distribuição de carga, dados e processamento
o permite distribuir tarefas de modo a optimizar o desempenho geral
o mais CPUs, maior capacidade de processamento
o vantagem: custo/performance
• Expansibilidade (scalability)
o utilizadores (e processos), dispersão física e administração
• Disponibilidade e tolerância a falhas
Objetivos na concepção de um Sistema Distribuído
• Acessibilidade e partilha de recursos dispersos fisicamente.
• Transparência (da distribuição)
o capacidade de esconder dos utilizadores a distribuição física dos
recursos
o a visão deverá ser de um sistema único e consistente
• Aberto
o capacidade de o sistema ser implementado de diferentes formas
• Expansível (scalability)
Programação Sistemas Distribuídos.
2
Prof.Fábio Rener
Transparência na Distribuição
Transparência Descrição
Acesso Esconder diferenças na representação
dos dados.
Localização Esconder a localização dos recursos.
Migração Poder mudar um recurso sem afetar o
modo de funcionamento e acesso.
Recolocação Poder mudar a localização de recursos
durante o seu uso.
Replicação Esconder a existência de múltiplas
réplicas de um recurso (associado à
transparência de localização).
Concorrência Esconder a coordenação necessária para
acessar a recursos partilhados e
assegurar consistência.
Falhas Esconder falhas e possíveis recuperações
de recursos.
OBS:Transparência é um objetivo de Sistemas Distribuídos, mas alcança-lo é dificil.
Abertura de um Sistema Distribuído
• Deve ser capaz de interagir com outros sistemas abertos, independentemente
do ambiente. Para isso precisam de:
o ter interfaces bem definidas e públicas
o suportar portabilidade das aplicações
o ser facilmente inter-operáveis
• Deve ser independente da heterogeneidade do seu ambiente de execução:
o plataformas (hardware + software)
o linguagens de programação
Middleware e abertura
O que é um Middleware ?
Middleware ou mediador, no campo da computação distribuída, é um programa de
computador que faz a mediação entre software e demais aplicações. É utilizado para
mover ou transportar informações e dados entre programas de diferentes protocolos
de comunicação, plataformas e dependências do sistema operacional. É geralmente
constituído por módulos dotados com APIs de alto nível que proporcionam a sua
integração com aplicações desenvolvidas em diversas linguagens de programação e
interfaces de baixo nível que permitem a sua independência relativamente ao
dispositivo. Seu objetivo é mascarar a heterogeneidade e fornecer um modelo de
programação mais produtivo para os programadores de aplicativos. É composto por
um conjunto de processos ou objetos em um grupo de computadores, que interagem
entre si de forma a implementar comunicação e oferecer suporte para
compartilhamento de recursos e aplicativos distribuídos. O Middleware é a designação
genérica utilizada para referir aos sistemas de software que se executam entre as
aplicações e os sistemas operacionais. O objetivo do middleware é facilitar o
desenvolvimento de aplicações, tipicamente as distribuídas,
...