Você está na página 1de 20

Introdução aos Sistemas Distribuídos

Sistemas Distribuídos

Mauro Lopes Carvalho Silva

Professor EBTT
DAI – Departamento de Informática
Campus Monte Castelo

Instituto Federal de Educação Ciência e Tecnologia do Maranhão

Sistemas Distribuídos – 8º Período


Objetivos

• Nesta aula iremos apresentar os conceitos básicos


aplicados aos Sistemas Distribuídos. Serão
abordados aqui os conceitos e problemas clássicos
na criação de um sistema distribuído.

Sistemas Distribuídos – 8º Período


Plano de Aula

• Introdução a Sistemas Distribuídos


– O que é um Sistemas Distribuído
– Exemplos de Sistemas Distribuídos
– Que valores os Sistemas Distribuídos podem
adicionar
– Heterogeneidade em Sistemas Distribuídos

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos

• O que é um sistema distribuído?


– Vários computadores: Computadores pessoais,
estações de trabalho, servidores, [celulares], etc;
– Interconectados por uma rede;
– Compartilhando um estado.

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos

• O que é 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” – Tanenbaum/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 " - George Coulouris.

– Obs: Só os computadores ligados em rede não


caracteriza um Sistema Distribuído;

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos

• O que é um sistema distribuído? - Internet

Oracle
MySql
SQL Server
Firebase
Web Server etc

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos

• O que é um sistema distribuído?

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos

• O que é um sistema distribuído? – Computação


Móvel

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos

• O que é um sistema distribuído?

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos

• E onde eu encontro Sistemas Distribuídos?


– Finanças e Comércio:
– Amazon, eBay, Paypal, Internet Banking, Caixa Eletrônico.
– Engenhos de busca e informação na web
– Google, Yahoo, Wikipedia, Facebook, MySpace.
– Indústrias Criativas e Entretenimento
– Jogos online, compra de música e filmes, Youtube, Flickr.
– Medicina
– Monitoramento remoto de pacientes, prontuários online.

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos

• E onde eu encontro Sistemas Distribuídos?


– Em um jogo online, Worms Armageddon, por exemplo;
– Se meu jogador, 'Jar Lyoto' atira com uma bazuca em uma direção e com uma
determinada força, sabendo a força do vento;
– Essa informação é enviada ao servidor, que checa e calcula onde esse tiro vai,
constatando que vai na cabeça do jogador 'Rosy Rousey'. O servidor envia essa
informação para Rosy, que agora tem um jogador a menos, assim como pontos a
menos, e informações novas sobre o cenário e vento;
– Agora ela, com o jogador 'Florisbull Shogun' atira uma granada contra o jogador
'Branco Machida'. O servidor checa as informações de vento, de posição, de força...e
vê que errou;
– Notou o 'jogador A', 'servidor', 'jogador B'...em outras palavras: cliente, servidor,
cliente, servidor...isso é um sistema distribuído;
– Não está acontecendo no seu computador, isolado.
– Veja o nome 'sistema', que no caso é o computador da Rosy e o meu, e o servidor
que administra o jogo Worms Armageddon. Esse é o sistema, que distribui as tarefas,
com um fim único, o jogo.

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos
• E onde eu encontro Sistemas Distribuídos?
– Quer ajudar nas pesquisas científicas nas áreas de Biologia Molecular, Climatologia,
Criptografia, Matemática ou Astrofísica? E que tal ajudar a prever epidemias na
África? Ou ajudar no avanço do conhecimento sobre doenças, como AIDS e Câncer? E
sem fazer nada?
– Conheça o BOINC e ajude o mundo. BOINC - Berkeley Open Infrastucture For
Network Computing é uma imensa rede de computação distribuída, onde você pode
'doar' seu computador para processamento científico;
– Mas a capacidade computacional de processamento de empresas e universidades são
limitadas. É aí que você entra. Em casa, sem fazer nada, você pode fazer
descobertas científicas. Basta emprestar seu processador para fazer esses cálculos;
– É aí que entra o BOINC. Você baixa ele, escolhe o projeto que quer ajudar e deixa o
computador fazer o resto. Ele vai baixar algumas informações do projeto, fazer os
cálculos e retorna os resultados para o projeto. Você escolhe o tanto que quer usar
de processador, internet (pra baixar e devolver os dados obtidos) e quando o BOINC
vai rodar.

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos
• E onde eu encontro Sistemas Distribuídos?
– Mas um exemplo prático, são as redes P2P, ou peer-to-peer. São os famosos
programas de torrent. Neles, não há uma central de rede, todos são clientes e
servidores ao mesmo tempo;
– Ou seja, quanto mais você compartilha, mais compartilham você, e mais rápido você
recebe dados. E recebe de todos os lugares e pessoas do mundo;
– Se está baixando um filme, por exemplo, pode está recebendo o começo dele de um
usuário da Argentina, 3 minutos do meio de um Canadense e os 5 minutos finais de
um Chinês. O importante é receber. E recebe, e geralmente rápido.
– Diferente de sua faculdade ou empresa, não há uma administração ou sala-chefe.
Todos são clientes e todos são servidores. Em um servidor normal, você recebe seu
arquivo, com banda limitada, do início ao fim.
– Em P2P, recebe aos poucos, com banda ilimitada (o máximo que você aguentar), aos
pedaços...quem já usou torrent sabe o quanto é rápido e prático.

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos

• Exemplos de Sistemas Distribuídos


– Aplicações comerciais (reservas de bilhetes,bancos):
– Ex: pense em uma aplicação que precisa realizar ações como um portal
de turismo que precisa um vôo, um hotel e um carro para locomoção
do seu cliente.
– Aplicações Internet (WWW)
– Ex: pense em como o google consegue resolver todas as suas
requisições.
– Aplicações de acesso a informações multimídia
(Áudio (voz) e vídeo conferência, P2P)
– Ex: Como os arquivos são compartilhados usando os torrents.
– Groupware (trabalho cooperativo)
– Ex: Pesquise como dois usuários podem ao mesmo tempo usar as
ferramentas de office do google.

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos

• Que características fazem com que a construção de


um sistema distribuído seja mais difícil?
– Heterogeneidade de componentes (Hardware,
Software, Rede, etc);
– Componentes com diferentes modos de falha
(Hardware, Software, Rede, etc)
– Inexistência de relógio global exato (Como saber se
uma atualização é mais recente que outra em um arquivo
distribuído entre vários usuários - Groupware);
– Grandes variações nos atrasos associados com a
comunicação entre processos (Processos sendo
executados em máquina distintas e tendo de se comunicar via
rede);

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos

• Que valores a distribuição pode adicionar?


– Confiabilidade
– Crescimento Modular
– Integração de serviços
– Custo

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos
• Heterogeneidade
– Os elementos que fazem parte de um Sistema
Distribuído podem ser completamente heterogêneos em:
Hardware, Software, Rede, Protocolos, Sistemas
Operacionais, Políticas de Escalonamento, etc.

Sistemas Distribuídos – 8º Período


Introdução a Sistemas Distribuídos

• Heterogeneidade
– Como suportar computadores e redes heterogêneos,
oferecendo uma visão de sistema único?
– Sistemas Distribuídos são organizados por meio de uma
camada de software – Middleware;

Sistemas Distribuídos – 8º Período


Dúvidas

Sistemas Distribuídos – 8º Período


Próxima Aula

• Metas de um Sistema Distribuído

Sistemas Distribuídos – 8º Período

Você também pode gostar