sistema sd

24

Upload: mikail-addams

Post on 22-Jan-2018

35 views

Category:

Internet


0 download

TRANSCRIPT

Este aspecto faz com que um conjunto de máquinasseja visto por seus usuários como se fossemsimplesmente um único sistema de tempocompartilhado.

Tipos distintos de transparência em um sistemadistribuído:

◦ Localização◦ Migração◦ Replicação◦ Concorrência◦ Paralelismo◦ Escala

Localização:◦ Usuários não têm que saber a localização dos recursos remotos

Migração:◦ Potencial para realocar recursos dinamicamente sem que os

usuários estejam cientes do movimento de recursos

◦ Os recursos podem mudar de lugar sem ter que mudar seus nomes.

Replicação:◦ Múltiplas instâncias de recursos são usados, mas Sistemas

Distribuídos ocultam qualquer diferença entre recursos replicados,ou não replicados.

◦ Os usuários não devem saber quantas cópias existem.

Concorrência:◦ Usuário não está ciente da existência de acesso simultâneo à

recursos remotos.◦ Vários usuários podem compartilhar automaticamente os

recursos.

Paralelismo:◦ Podem ocorrer atividades paralelas sem que os usuários

venham a saber.

Escala:◦ Oculta a expansão sem mudar a estrutura do sistema

Capacidade de suportar mudanças em sua estruturadepois de ser desenvolvido, sem comprometimentoda execução das aplicações.

É muito importante que o sistema seja flexível ásdecisões do projeto. Situações que hoje parecembem razoáveis poderão revelar-se erradas maistarde.

A melhor maneira de se evitar problemas émantendo várias opções em aberto (flexibilidade).

Um sistema deve ser capaz de interagir com largonúmero de outros sistemas e serviços.

A inserção de novos módulos no sistema deve seruma tarefa simples

Como???

Disponibilidade

◦ Propriedade de um sistema poder funcionar continuamente semfalha

◦ Para ser confiável, um sistema deve possuir alta disponibilidade esegurança

◦ Sistemas distribuídos podem ser potencialmente mais confiáveisdevido à multiplicidade e a um certo grau de autonomia de suaspartes.

◦ É notório que a distribuição física não é tão importante quanto adistribuição lógica. Esta última pode ser implementada tanto a umúnico processador quanto a vários processadores localizados nummesmo ambiente ou em ambiente distintos .

Tolerância a falha (Resiliência)

◦ Física: Propriedade de um material de recuperar a sua forma ouposição original após sofrer choque ou deformação; elasticidade;

◦ A resiliência de processos preocupa-se em criar mecanismos deproteção a processos, tentando fazer com que os mesmossobrevivam a eventuais falhas em um sistema;

◦ Uma forma de tornar um processo resiliente é a utilização deprocessos redundantes (redundância física);

◦ Um aspecto chave para contornar falhas de processos é organizarvários processos idênticos em um grupo no qual todos os processospossam recebar mensagens enviadas ao grupo.

Segurança

◦ Os dados confiados à guarda dos sistemas não podem demaneira nenhuma, sofrer qualquer tipo de adulteração ouperder-se .

◦ O aspecto da confiabilidade global é a segurança. Osarquivos e demais recursos devem ser protegidos contrauso-não autorizado. Isso se torna crítico no caso dossistemas distribuídos.

◦ Em geral, um Sistema Distribuído pode ser projetado para“mascarar” falhas ocorridas, esconder dos seus usuários.

O problema da performance é muitoinfluenciada pela comunicação.

O envio de uma mensagem e a obtenção daresposta correspondente demora em tornode um milissegundo, e a maior parte dessetempo é gasto no tratamento do protocolo,quando deveria ser gasto na transmissão dosbits propriamente ditos.

Balanceamento de carga

◦ Visa distribuir a carga de acesso a recursos e/ou serviçospara promover um aumento da capacidade da rede emelhoria da performance

◦ O balanceamento de carga é mais que um simplesredirecionamento do tráfego dos clientes para outrosservidores. É preciso que haja constante verificação dacomunicação, checagem dos servidores e redundância.

◦ A dificuldade dessa técnica é que para ganhar performance épreciso ter várias atividades rodando em paralelo emdiferentes processadores, mas para isso é necessário atransmissão de muitas mensagens.

Processamento distribuído (ou paralelo)

◦ Uma grande tarefa computacional é dividida em partesmenores, pequenas tarefas que são distribuídas ao redor dasestações (nodos), como se parecesse um supercomputador.

◦ Este tipo de cluster é usado em tarefas de computaçãocientífica ou análises financeiras, tarefas que exigem um altopoder de processamento.

Um sistema é descrito com escalável sepermanece eficiente quando há um aumentosignificativo no número de recursosutilizados e no número de usuários.

O projeto de sistemas distribuídos escaláveisapresenta os seguintes desafios:

◦ Controlar os custos dos recursos físicos.◦ Controlar a perda de desempenho.◦ Evitar gargalos de desempenho.

A escalabilidade de um sistema pode ser medidasegundo três dimensões diferentes:

◦ Um sistema pode ser escalável em relação a seu tamanho, oque significa que é fácil adicionar mais usuários e recursosao sistema;

◦ Um sistema escalável em termos geográficos é um sistemano qual usuários e recursos podem estar longe uns dosoutros;

◦ Um sistema pode ser escalável em termos administrativos, oque significa que ele ainda pode ser fácil de gerenciar,mesmo que abranja muitas organizações administrativasdiferentes.

Quando é necessário ampliar um sistema, épreciso resolver problemas de tipos muitodiferentes;

O servidor pode se transformar em umgargalo à medida que o número de usuáriose aplicações cresce.

A escalabilidade geográfica tem seus própriosproblemas. Uma das principais razões por que hojeé difícil ampliar SD existentes que foramoriginalmente projetados para LANs é que eles sãobaseados em comunicação síncrona;

◦ Na comunicação síncrona, uma parte que requisita umserviço (cliente), fica bloqueada até que uma mensagem sejaenviada de volta:

◦ Isso funciona bem em LANs, onde a comunicação entremáquinas demora centenas de microsegundos, mas numaWAN, onde a comunicação demora centenas demicrosegundos – isto requer cuidados !!

Técnicas de escalabilidade

◦ Comunicação assíncrona: oculta a latência decomunicação

◦ Distribuição: particiona um componente em partesmenores e espalha essas partes pelo sistema

◦ Replicação: aumenta a disponibilidade e permitebalanceamento de carga (pode gerar problema deConsistência)