Upload
graciela-gallas
View
78
Download
15
Embed Size (px)
DESCRIPTION
Apresentação primeira aula sobre sistemas distribuidos
Citation preview
Sistemas Distribuídos
IntroduçãoPrincipais conceitos de Sistemas Distribuídos
Aula 1
Profª. Me. Eduarda Rodrigues Monteiro
Graduação Tecnológica Curso de Análise e Desenvolvimento de Sistemas
Sumário• Contextualização
– História
• Definições de Sistemas Distribuídos• Exemplos• Aspectos importantes• Vantagens de um Sistema Distribuído• Desvantagens de um Sistema Distribuído• Desafios• Bibliografia
2Sistemas Distribuídos – Profª. Eduarda Monteiro
Contextualização• Evolução da Tecnologia:
– Sistemas Operacionais:• 1945 – 1985: computadores grandes e caros (muito
caros) destinados a poucas organizações. • 1980: começam a surgir microprocessadores: 8, 16, 32
e 64 bits. • 1985: miniaturização dos computadores e preços
menores.
3Sistemas Distribuídos – Profª. Eduarda Monteiro
Contextualização• Evolução da Tecnologia:
–Redes:Redes:• Popularizaram-se praticamente junto com os
computadores• Permitiram que máquinas localizadas em um mesmo
ambiente físico (ou não) podiam se comunicar e trocar pequenos volume de dados
– Compartilhamento de recursos
• Hoje, milhões de máquinas estão conectadas no mundo todo
4Sistemas Distribuídos – Profª. Eduarda Monteiro
Contextualização• Evolução da Tecnologia:
– Paradigmas Computacionais:• Paralelo:
– Foco na eficiência de execução da aplicação (tempo de execução);
• Concorrente:– Tarefas/partes executadas ao mesmo tempo (recursos
compartilhados);
• Distribuído:– Tarefas/partes executadas em um ambiente distribuído;– Podem ou não podem ser paralelas
5Sistemas Distribuídos – Profª. Eduarda Monteiro
Contextualização• A grande questão:
– Por que construir um sistema distribuído?• Compartilhamento de RecursosCompartilhamento de Recursos• Mas o que são esses recursos?
–Hardware, discos, impressoras, arquivos, banco de dados, entre tantos outros...
6Sistemas Distribuídos – Profª. Eduarda Monteiro
Definições de um Sistema Distribuído“Um sistema distribuído é um conjunto de computadores independentes entre si que se apresenta a seus usuários como um sistema único e coerente” – Tanembaum/Van Steen
“Um sistema em que componentes de hardware e software localizados em computadores em rede se comunicam e coordenam suas ações por passagem de mensagens.” – Coulouris et al.
“Uma coleção de elementos de processamento interconectados, tanto logicamente como fisicamente, para execução cooperativa de programas de aplicação com o controle geral dos recursos centralizado.” – M. Eckhouse
“Você sabe que existe um sistema distribuído quando a falha de um computador, que você nunca ouviu falar, impede que você faça qualquer trabalho” - Leslie Lamport
7Sistemas Distribuídos – Profª. Eduarda Monteiro
Definições de um Sistema Distribuído“Um sistema em que componentes de hardware e software localizados em computadores em rede se comunicam e coordenam suas ações por passagem de mensagens.” – Coulouris et al.
8
Todos os componentes (computadores) que formam um sistema distribuído
são totalmente autônomos/independentes
Todos os usuários (pessoas/programas) acham que estão manipulando um único
sistema
Como é realizada a comunicação em sistema distribuído?- Troca de mensagens entre si.
Como é realizada a comunicação em sistema distribuído?- Troca de mensagens entre si.
Sistemas Distribuídos – Profª. Eduarda Monteiro
Exemplos
9
• Aplicações Comerciais (vendas de ingressos, bancos, etc);
• Internet (WWW) – exemplo clássico;– Protocolos viabilizam o funcionamento
• Aplicações destinadas a dados multimídias (P2P, áudio, voz, etc);
• Aplicações Coorporativas.
Sistemas Distribuídos – Profª. Eduarda Monteiro
Aspectos importantes• Todos os componentes de um sistema
distribuído (SD) são computadores autônomos.• Todos os usuários (podem ser pessoas ou
programas) acham que estão lidando com um único sistema.
10Sistemas Distribuídos – Profª. Eduarda Monteiro
Ambiente Distribuído
Aspectos importantes• Qualquer usuário ou aplicação pode interagir com o
sistema distribuído de maneira uniforme
• Tipicamente, um sistema distribuído está sempre disponível. Mesmo que uma ou outra parte esteja temporariamente indisponível
• O usuário não deve perceber quais partes, ou qual parte, esteja sendo substituída ou consertada
11Sistemas Distribuídos – Profª. Eduarda Monteiro
12
• Como já mencionado, os sistemas distribuídosaparecem para o usuário como um único sistema
Sistemas Distribuídos – Profª. Eduarda Monteiro
Quem gerencia um sistema distribuído? Quem gerencia um
sistema distribuído?
Aspectos importantes
13Sistemas Distribuídos – Profª. Eduarda Monteiro
Computador 1 Computador 2 Computador 3 Computador 4
Apl. A Aplicação B Apl. C
Middleware
SO LOCAL 1 SO LOCAL 2 SO LOCAL 3 SO LOCAL 4
• Middleware– Camada de software situada entre uma camada de nível mais alto (usuários e
aplicações) e uma camada subjacente (sistemas operacionais e comunicação).
Aspectos importantes
Aspectos importantes• Camadas e software e hardware em serviços
de um sistema distribuído
14Sistemas Distribuídos – Profª. Eduarda Monteiro
Hardware, RedeHardware, Rede
Sistema OperacionalSistema Operacional
MiddlewareMiddleware
Aplicativos, ServiçosAplicativos, Serviços
Plataforma
Vantagens de um Sistema Distribuído• Economia:
– compartilhamento de recursos– melhor relação custo/desempenho
• Eficiência: – maior poder de computação
• Crescimento:– poder computacional adicionado em incrementos
15Sistemas Distribuídos – Profª. Eduarda Monteiro
Desvantagens de um Sistema Distribuído
• Software: – ainda existem poucos softwares desenvolvidos para este
tipo de ambiente
• Rede: – a rede pode causar problemas, e o sistema pode ser
totalmente afetado
• Segurança:– muitos acessos, muitas portas, muitos usuários, muitos,
muitos...
16Sistemas Distribuídos – Profª. Eduarda Monteiro
Desafios
17
• Heterogeneidade:– Deve oferecer fácil acesso aos recursos:
• Hardware, Software e Linguagem de Programação.• Transparência:
– Deve ocultar o fato de que os recursos são distribuídos do usuário;
• Sistemas Abertos:– Devem ser sistemas abertos a novos serviços;– Exemplo de um sistema aberto?????
• Escalabilidade:– Deve permitir o aumento de recursos e usuários com
facilidade
Sistemas Distribuídos – Profª. Eduarda Monteiro
Desafios
18
• Segurança:– Deve garantir confidencialidade;
• Tolerância a Falhas:– Deve garantir a integridade dos dados:
• Detecção dinâmica e recuperação de falhas:– Alguns recursos param e outro continuam funcionando sem
afetar o sistema (execução da aplicação).
Sistemas Distribuídos – Profª. Eduarda Monteiro
Atividade • Pesquisar sobre projetos de sistemas
distribuídos– Apresentar um pequeno resumo aos colegas
• Características• Objetivo do projeto• Vantagens e desvantagens
19Sistemas Distribuídos – Profª. Eduarda Monteiro
Bibliografia
20Sistemas Distribuídos – Profª. Eduarda Monteiro
• Tanembaum, Andrew S. et. al. Sistemas Distribuídos: princípios e paradigmas. 2ed. 2007– Tanembaum, Andrew S. et. al. Distributed Systems:
Principles and Paradigms. 2ed. 2007.
• Coulouris, George. et. al. Sistemas Distribuídos: Conceitos e Projetos. 4ed. 2007– Coulouris, George. et. al. Distributed Systems - Concepts and
Design. 5ed. 2011