Apresente uma definição para Sistemas Distribuídos e destaque as suas principais características
Por: Marlon Martins • 19/12/2018 • Trabalho acadêmico • 1.265 Palavras (6 Páginas) • 2.401 Visualizações
1 – Apresente uma definição para Sistemas Distribuídos e destaque as suas principais características.
Um sistema distribuído é um conjunto de computadores independentes que se apresenta a seus usuários como um sistema único e coerente. Suas principais características são que podem haver computadores com arquiteturas diferentes, um sistema deve ser transparente quanto a diferenças entre esses computadores e como eles se comunicam, devem aceitar escalabilidade, devem funcionar mesmo que parte do sistema esteja indisponível.
2 – Explique a importância do conceito de “Transparência” no projeto de um SD e seus principais tipos.
Transparência em SD’s é o conceito de que o usuário não veja a distribuição física de recursos, e seus tipos são:
- Acesso: recursos locais e remotos acessados igualmente
- Localização: usuário não sabe a localização dos recursos
- Migração: recursos podem se mover sem trocar de nomes
- Relocação: Oculta que um recurso pode ser movido para outra localização enquanto em uso;
- Replicação: usuários não sabem o número de cópias de um recurso
- Paralelismo: aplicações podem rodar em paralelo sem o conhecimento do usuário.
- Concorrência: Oculta que um recurso pode ser compartilhado por diversos usuários concorrentes;
- Falha: Oculta a falha e a recuperação de um recurso
3 - Cite cinco tipos de recurso de hardware e cinco tipos de recursos de dados ou de software que possam ser compartilhados com sucesso. Dê exemplos práticos de seu compartilhamento em sistemas distribuídos.
De hardware temos processador, memoria, discos, impressoras e switch.
De software temos arquivos, banco de dados, protocolos de comunicação, funções do sistema operacional e ip.
Podemos usar um SD para compartilhar recursos de processamento e memória em um sistema, podemos compartilhar um banco de dados em um SD.
4 - Considere as estratégias de implementação de MMOG (massively multiplayer online games) discutidas na Seção 1.2.2 do livro texto. Em particular, quais vantagens você vê em adotar a estratégia de servidor único para representar o estado do jogo para vários jogadores? Quais problemas você consegue identificar e como eles poderiam ser resolvidos?
A principal vantagem em um sistema de cliente-servidor num sistema MMOG é centralização dos dados dos clientes em um único servidor, facilitando a comunicação entre os clientes. Um grande problema seria a escalabilidade que em um sistema com vários servidores seria mais fácil de implementar.
5 - Compare e contraste a computação em nuvem com a computação cliente-servidor mais tradicional. O que há de novo em relação à computação em nuvem como conceito?
A computação em nuvem difere do cliente-servidor por estar espalhada em diferentes lugares que fornecem o processamento a um cliente não ficar off-line se alguma parte do sistema ficar inoperante já o cliente-servidor comum ser o servidor cair o sistema ficava inoperante.
6 - Qual o principal papel do middleware em um sistema distribuído?
Servir como um camada que oculte as diferenças entre hardware ou software permitindo a comunicação entre eles.
7 – Apresente e discuta sobre as principais diferenças entre um Sistema de Computação Paralela e um sistema de Computação Distribuído e associe aos conceitos de Grid e Cluster de computadores.
A computação em grid se assemelha muito a computação distribuída ambas executando operações em máquinas diferentes já a computação paralela se parece com a computação em cluster que divide um processo em threads e esses são executados em paralelo
8 - Um serviço é implementado por vários servidores. Explique por que recursos poderiam ser transferidos entre eles. Seria satisfatório para os clientes fazer multicast (difusão seletiva) de todos os pedidos para o grupo de servidores, como uma maneira de proporcionar transparência de mobilidade para os clientes?
Segundo a transparência de SD’s sim esses recursos poderiam ser transferidos entre os servidores, e os clientes poderiam fazer um multicast dos pedidos mas seria necessário saber se os servidores poderiam atender a demanda de todos os pedidos se fosse aplicada a escalabilidade seria uma garantia de atendimento satisfatório dos pedidos dos clientes.
9 - Dê três exemplos específicos e contrastantes dos níveis de heterogeneidade cada vez maiores experimentados nos sistemas distribuídos atuais.
Temos uma variedade em termos de: hardware, sistema operacional, rede, linguagem de programação e implementações de diferentes desenvolvedores.
10 - Descreva e ilustre a arquitetura cliente-servidor de um aplicativo de Internet importante (por exemplo, Web, correio eletrônico ou outros).
A arquitetura cliente-servidor de um correio eletrônico um servidor é encarregado de transmitir as mensagens de um cliente para outro essa transmissão pode ocorrer mesmo que o cliente envie um e-mail para um servidor diferente do qual ele está usando ou caso ele receba uma e-mail de um servidor diferente também.
[pic 1]
11 – Construir um servidor concorrente por meio da multiplicação de um processo tem algumas vantagens e desvantagens em comparação com servidores multithread. Cite e explique algumas.
Dependo do resultado esperado na multiplicação de processos temos a seguintes vantagens teremos mais instancias executadas do processo assim tendo um número maior de resultado no mesmo período de tempo já se queremos resolver uma instancia mais rapidamente o servidor multithread trará um resultado melhor.
12 – Considerando o projeto de um serviço onde os conceitos de mobilidade de código serão aplicados, comente sobre quais questões o projetista deve ser levar em conta antes de realizar as suas escolhas.
...