Escolar Documentos
Profissional Documentos
Cultura Documentos
2
Sistemas Distribuídos
Introdução
O segundo desenvolvimento foi a invenção de redes de
computadores de alta velocidade.
Introdução
O resultado dessas tecnologias é que ficou fácil e
viável montar sistemas de computação composto por
grandes quantidades de computadores conectados por
uma rede de alta velocidade.
Estes sistemas costumam ser denominados redes de
computadores ou sistemas distribuídos.
5
Sistemas Distribuídos
Definição
Um sistema distribuído é um conjunto de computadores
independentes que se apresenta a seus usuários como
um sistema único e coerente.
Aspectos importantes desta definição:
Um sistema distribuído consiste em componentes
(computadores) autônomos.
Os usuários (pessoas ou programas) acham que estão
tratando com um único sistema.
6
Sistemas Distribuídos
Definição
Os componentes autônomos precisam colaborar.
Esta colaboração é o cerne (parte importante) do
desenvolvimento de sistemas distribuídos.
Características
Transparente para o usuário:
●
Diferenças entre os vários computadores.
●
Modo em que os computadores se comunicam.
●
Organização interna do sistemas distribuídos.
Usuários e aplicações podem interagir com um
sistema distribuído de maneira consistente e uniforme.
8
Sistemas Distribuídos
Características
Facilidade de expandir ou aumentar a escala de sistemas
distribuídos.
Consequência direta de ter computadores
independentes e de ocultar como estes
computadores realmente fazem parte do sistema.
Estar continuamente disponível, embora algumas partes
possam estar temporariamente com problemas.
Usuários e aplicações não devem perceber quais são
as partes que estão sendo substituídas ou
concertadas, ou quais as novas partes adicionadas.
9
Sistemas Distribuídos
11
Sistemas Distribuídos
Metas
O fato de montar sistemas distribuídos não quer dizer
necessariamente que seja uma boa ideia.
Temos quatro metas importantes que devem ser cumpridas na
construção de um sistema distribuído para que valha a pena o
esforço:
●
Acesso fácil aos recursos,
●
Transparência da distribuição,
●
Ser aberto,
●
Poder ser expandido (escalabilidade).
13
Sistemas Distribuídos
14
Sistemas Distribuídos
17
Sistemas Distribuídos
Metas – Abertura
Um sistema distribuído aberto é um sistema que
oferece serviços de acordo com as regras
padronizadas que descrevem a sintaxe e a semântica
destes serviços.
Exemplo:
Em redes de computadores há regras padronizadas
que governam o formato, o conteúdo e o significado
de mensagens enviadas e recebidas. (protocolos).
18
Sistemas Distribuídos
Metas – Abertura
Em sistemas distribuídos estes serviços são especificados por meio
de interfaces, que costumam ser descritas em uma linguagem de
definição de interfaces (Interface Definition Language – IDL).
As IDL especificam com precisão os nomes das funções que estão
disponíveis, junto com os tipos dos parâmetros, os valores de
retorno, as possíveis exceções que podem surgir e assim por diante.
A parte difícil é especificar com precisão o que estes serviços fazem
(semântica das interfaces).
Na prática, são dadas de modo informal por meio de linguagem
natural.
19
Sistemas Distribuídos
Metas – Escalabilidade
A escalabilidade de um sistema pode ser medida em
3 dimensões diferentes:
Escalável em relação a seu tamanho.
Significa que é fácil adicionar mais usuários e
recursos ao sistema.
Escalável em termos geográficos.
Sistema no qual usuários e recursos podem
estar longe uns dos outros.
21
Sistemas Distribuídos
Metas – Escalabilidade
A escalabilidade de um sistema pode ser medida em
3 dimensões diferentes:
Escalável em termos administrativos.
Fácil de gerenciar, mesmo que abranja muitas
organizações administrativas diferentes.
Sistemas escaláveis em uma ou mais destas
dimensões muitas vezes apresentam perda na
capacidade de desempenho à medida que é
ampliado. 22
Sistemas Distribuídos
Metas – Tratamento de falhas
Às vezes, os sistemas de computador falham. Quando
ocorrem falhas no hardware ou no software, os programas
podem produzir resultados incorretos ou podem parar antes de
terem concluído a computação pretendida.
As falhas em um sistema distribuído são parciais, isto é, alguns
componentes falham, enquanto outros continuam funcionando.
Portanto, o tratamento de falhas é particularmente difícil.
23
Sistemas Distribuídos
24
Sistemas Distribuídos