Buscar

Lista 7 - Computacao Distribuida

Prévia do material em texto

1- Analisando o nível de heterogeneidade nas seguintes áreas. 
Hardware:​ os sistemas distribuídos são cada vez mais heterogêneos com PCs (geralmente 
baseados em Intel), smartphones, nós de sensores de recursos limitados e computadores com 
cluster de recursos ou processadores de vários núcleos. 
Sistemas operacionais:​ um sistema distribuído pode incluir computadores com Windows, MAC 
OS, vários tipos diferentes de Unix e também mais sistemas operacionais especializados para 
smartphones ou nós de sensores. 
Redes:​ a Internet também é cada vez mais heterogênea abraçando tecnologias sem fio e 
estilos ad hoc de redes. 
 
2- 
O cliente está intrinsecamente ligado ao servidor e vice-versa e isso é inflexível em termos de 
lidar com falha, por exemplo, se o servidor falhar e um servidor de backup assumir o 
gerenciamento de pedidos. Geralmente, esse nível de acoplamento torna-se difícil de lidar 
com mudanças. 
Clientes e servidores devem existir ao mesmo tempo e, portanto, não é possível operar em 
ambientes mais voláteis quando qualquer uma das partes pode estar indisponível, por 
exemplo, desconectada no caso de um nó móvel. 
O benefício do desacoplamento espacial é proporcionar maiores graus de liberdade ao lidar 
com a mudança, por exemplo, se um novo servidor começar a lidar com solicitações. 
O benefício do desacoplamento de tempo é permitir que as entidades se comuniquem quando 
elas podem ir e vir. 
 
3- 
É um modelo computacional que separa clientes e servidores, sendo interligados 
entre si em geral utilizam uma rede de computadores. Cada instância de um cliente pode 
enviar requisições de dado para algum dos servidores conectados e esperar pela resposta. 
Um navegador da web é um programa cliente em execução no computador de um usuário 
que pode acessar informações armazenadas em um servidor web na Internet. Usuários de 
serviços bancários acessando do seu computador usam um cliente navegador da Web para 
enviar uma solicitação para um servidor web em um banco. Esse programa pode por sua 
vez encaminhar o pedido para o seu próprio programa de banco de dados do cliente que 
envia uma solicitação para um servidor de banco de dados em outro computador do banco 
para recuperar as informações da conta. O saldo é devolvido ao cliente de banco de dados 
do banco, que por sua vez, serve-lhe de volta ao cliente navegador exibindo os resultados 
ao usuário. 
 
4- 
O posicionamento precisa levar em conta os padrões de comunicação entre as 
entidades, a confiabilidade de determinadas máquinas e sua carga atual, a qualidade da 
comunicação entre as diferentes máquinas, etc. Isso deve ser determinado com forte 
conhecimento dos aplicativos, sendo que existem algumas diretrizes universais para s e 
obter a melhor solução. Sendo assim as seguintes estratégias: mapeamento de serviços 
em vários servidores; uso de cache; código móvel e agentes móveis. 
 
5- 
As tarefas do servidor (responder às consultas dos usuários) e as tarefas do Web 
crawler (fazer pedidos para outros servidores Web) são totalmente independentes; há 
pouca necessidade de sincroniza-las e elas podem ser executadas concomitantemente. 
Na verdade, um mecanismo de busca típico, normalmente, é feito por muitas threads 
concorrentes, algumas servindo seus clientes e outras executando web crawlers. 
 
6- 
Quanto à disponibilidade, se nenhum usuário que possua certa parte do arquivo 
estiver conectado na rede nenhum outro usuário que esteja fazendo download desse 
arquivo conseguirá completar todas as partes. A centralização do serviço em um único 
computador não favorece aumento da escala do sistema. 
Quanto à segurança, nas redes peer-to-peer esse quesito não é predominante. 
Existem problemas de dados corrompidos, latência de transferência, transferência não 
confiável, etc., além do problema de negação de serviço. Pode-se utilizar autenticação e 
criptografia para amenizar os problemas de segurança. 
A vulnerabilidade da disponibilidade pode ser solucionada utilizando a 
replicação de dados por servidores, transformando esses em seeds e sendo utilizado por 
todos os usuários da rede. O problema nesse caso se resume à velocidade de 
transferência desses servidores para prover o serviço aos clientes da rede. 
 
7- 
A web oferece um exemplo comum de particionamento de dados no qual cada 
servidor Web gerencia seu próprio conjunto de recursos. Um usuário pode usar um 
navegador para acessar um recurso em qualquer um desses servidores. Um exemplo de 
serviço baseado em dados replicados é o NIS (Network Information Service), da Sun, 
usado para permitir que todos os computadores em uma rede local acessem os mesmos 
dados de autenticação quando os usuários se conectam. Cada servidor NIS tem sua 
própria cópia (réplica) de um arquivo de senhas que contém uma lista de nomes de login 
dos usuários e suas respectivas senhas criptografadas. 
Um tipo de arquitetura em que ocorre uma interação maior entre vários 
servidores, e por isso denominada arquitetura fortemente acoplada, é o baseado e m 
cluster. Um cluster é construído a partir de várias, às vezes milhares, de unidad es de 
processamento, e a execução de um serviço pode ser particionada ou duplicada entre 
elas. 
 
8- 
 
 
9-

Continue navegando