Sistemas distribuidos [aula1]

20
Sistemas Distribuídos Introdução Principais conceitos de Sistemas Distribuídos Aula 1 Profª. Me. Eduarda Rodrigues Monteiro Graduação Tecnológica Curso de Análise e Desenvolvimento de Sistemas

description

Apresentação primeira aula sobre sistemas distribuidos

Transcript of Sistemas distribuidos [aula1]

Page 1: Sistemas distribuidos [aula1]

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

Page 2: Sistemas distribuidos [aula1]

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

Page 3: Sistemas distribuidos [aula1]

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

Page 4: Sistemas distribuidos [aula1]

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

Page 5: Sistemas distribuidos [aula1]

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

Page 6: Sistemas distribuidos [aula1]

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

Page 7: Sistemas distribuidos [aula1]

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

Page 8: Sistemas distribuidos [aula1]

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

Page 9: Sistemas distribuidos [aula1]

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

Page 10: Sistemas distribuidos [aula1]

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

Page 11: Sistemas distribuidos [aula1]

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

Page 12: Sistemas distribuidos [aula1]

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

Page 13: Sistemas distribuidos [aula1]

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

Page 14: Sistemas distribuidos [aula1]

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

Page 15: Sistemas distribuidos [aula1]

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

Page 16: Sistemas distribuidos [aula1]

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

Page 17: Sistemas distribuidos [aula1]

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

Page 18: Sistemas distribuidos [aula1]

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

Page 19: Sistemas distribuidos [aula1]

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

Page 20: Sistemas distribuidos [aula1]

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