Você está na página 1de 2

Sistemas Distribuídos

1. Como garantir a replicação com consistência. Por exemplo em um cenário com dois
Bancos B1 e B2. No primeiro ocorre um saque de $10,00 e em outro um depósito de
$20,00. Dependendo da ordem dos processos o saldo da conta pode ser $20 ou $10.
2. Tanebaum Distributed Systems
3. Coulouris
4. Minha biblioteca UFU
5. GBC074 – 6B9Z74O
6. Ler material do github

Aula 1 – Introdução

 Um Sistemas Distribuído é uma coleção de sistemas computacionais autônomos


(independentes) que se apresentam ao usuário como um sistema único coerente. Por
baixo dos panos eu tenho um sistema responsável pela interface, outro pelo banco de
dados e assim por diante.
 Cada nó tem sua própria noção de tempo:
o Sem relógio global
o Problemas fundamentais de sincronização e coordenação
 Comunicação
o Memória compartilhada
o Troca de mensagens
o DMA (Acesso direto à memória, usando ciclo ocioso da CPU).
o R-DMA (DMA remoto, junta troca de mensagens e memória compartilhada)
 Em uma coleção de nós:
o Como se faz o gerenciamento de membros do grupo.
o Como se garante a comunicação com não membro autorizado.
 Middleware
o É como o sistema operacional para o computador. Note que o SO funciona
como uma interface padrão. Os aplicativos conseguem se comunicar com
diferentes tipos de hardware. Quase como uma API.
o No caso de Sistemas Distribuídos o Middleware é uma camada que faz a
abstração para comunicação entre o cliente e os demais serviços. Oferece
comunicação, segurança, métricas, recuperação de falhas, transações e
composição de serviços.
o **Fica em cima do Sistema Operacional e abaixo das aplicações**
 Envio de e-mail
o Repostas -> SMTP -> TCP -> IP -> Ethernet
 Um bom sistema distribuído
o Disponível – Sempre funcional
o Poder computacional
 Capacidade de processamento
 Capacidade de armazenamento
 Baixa latência
o Baixo custo
 Tamanho apropriado a tarefa
 Por que utilizar sistemas distribuídos:
o Computadores individuais tem capacidade reduzida de processamento e
armazenamento, mas necessidade de poder computacional cresce
exponencialmente.
 Transparência de um sistema distribuído
o Acesso: diferenças na representação dos dados e como eles são acessados.
Exemplo, ao usar um e-mail você não se preocupa como um pdf anexado é
representado. O usuário não se preocupa onde um serviço está localizado.
o Localização: onde está o objeto
o Migração: objeto pode ser movido.
o Replicação: não interessa se o objeto está particionado ou não
o Concorrência: mais de uma pessoa usando o mesmo serviço ao mesmo tempo.
o Falha: falhas e recuperação.

Você também pode gostar