Exercícios Resolvidos: Sistemas Distribuídos e Clusters
Classificado em Computação
Escrito em em
português com um tamanho de 3,32 KB
SD_EX_05
1. Transparência e Falhas em Sistemas Distribuídos
Questão: Considere que uma empresa tem uma filial em São Paulo com 50 terminais acessando dois servidores no Rio de Janeiro (sede), sendo uma aplicação web e outro Banco de Dados. Em Porto Alegre existe uma réplica dos servidores do Rio de Janeiro, cuja sincronia é feita a cada 2 minutos. O cliente de São Paulo está parametrizado para comunicar-se sistematicamente com o Rio de Janeiro e, quando este servidor não responde a contento, ele tenta 5 vezes; após isso, ele se conecta aos servidores de Porto Alegre. Pergunta-se: (a) Como se chama esse tipo de transparência? (b) O que acontece com o usuário que está no cliente em São Paulo?
- (a) Transparência a falhas.
- (b) Aumento da latência.
2. Otimização de Desempenho e Escalabilidade
Questão: O cliente de São Paulo percebeu que o tempo de resposta aumentou de 3s para 6s devido a um aumento de 30% na carga dos servidores. Quais técnicas podem ser aplicadas para melhorar o desempenho?
Resposta:
- RAID: Para o acesso a informações armazenadas em banco de dados, seria a criação de RAIDs, onde tabelas seriam armazenadas de forma distribuída para otimizar o tempo de acesso.
- Cluster de Servidores: Para o processamento, seria ideal implantar um cluster de servidores com um conjunto de nós principais para distribuir o processamento, realizando o balanceamento de carga.
3. Funcionamento de um Cluster de Servidores
Questão: Explique como funciona o cluster de servidores, dando ênfase em cada uma das três camadas.
Um cluster é um conjunto de máquinas conectadas preferencialmente por uma rede local com alta largura de banda e baixa latência, no qual cada máquina executa um ou mais servidores.
- 1ª camada (Comutador Lógico): Por questão de escalabilidade e disponibilidade, o comutador identifica o melhor servidor para manipular cada requisição e repassa o pacote para um determinado servidor.
- 2ª camada (Servidores de Aplicação): Processa a requisição disparada pelo comutador lógico, que busca as informações em um dos servidores de banco de dados.
- 3ª camada (Sistema Distribuído de Banco de Dados): Fornece informações solicitadas pelos servidores de aplicação de forma rápida através de busca em discos, utilizando a técnica de RAID.
4. Conexão TCP/IP: Com ou Sem Estado?
Questão: Um servidor que mantém uma conexão TCP/IP com um cliente é com ou sem estado?
Resposta: A conexão é considerada sem estado (stateless), pois o servidor não precisa necessariamente manter os dados do cliente entre as requisições.
5. Segmento de Execução e Contexto
Questão: Qual é o nome do elemento onde o sistema operacional guarda informações para cada processo ou thread em execução, muito utilizado em mudanças de contexto?
Resposta: Bloco de Controle de Processo (Process Control Block - PCB).