Roteador
Servidor Web
Processamento
Dados
Armazenamento
O que é um cluster?
Cluster de Tres camadas
Camadas Escondidas
End point único
Resposta
Head ip do roteador
Exemplo o Browser
Como o Browser Carrega uma página?
Múltiplas conexões?
É realmente mais rápido?
Cuida da requisição sozinho
Retorna a resposta
Divide as requisições
Requisições encaminhadas para Threads
Exemplo:
Servidor Web
Servidores esperam requisições
Servidores Iterativos
Servidores Concorrentes
End Point
Interrupção
Stateless e Statefull
Cada servidor uma porta
Ponto de acesso
Agrupamentos de Servidores
Determinar End Points
Serviços comuns recebem portas
HTTP 80
SSH 22
FTP 21
Determinadas por uma associação
Por que desligar
Download gigante
Como desligar?
Serviço extra de shutdown
Out Of Band
Mesmo serviço
Shutdown do cliente
O que são?
Diferenças
Aplicações
Steteless
HTML estático
Statefull
Principal aplicação, por que?
Maior poder de processamento
Exemplos:
IO operação demorada
Multiplas requisições
Thread de leitura de dados
O que são?
Memória
Permissões
Como eles são administrados?
Custo da Troca
Swap - Quando e por que?
Diferensas?
Processo é mais lento
Mais pesado
Thread mais independente
Thread menos memória
Thread dead lock
Processo execução indep.
Thread melhor em SD
public class Deadlock {
static class Amigo {
private final String nome;
public Amigo(String nome) {
this.nome = nome;
}
public String getNome() {
return this.nome;
}
public synchronized void passar(Amigo passador) {
System.out.format("%s: %s"
+ " me passou a bola!%n",
this.nome, passador.getNome());
passador.passaDeVolta(this);
}
public synchronized void passaDeVolta(Amigo passador) {
System.out.format("%s: %s"
+ " voltou a bola pra mim!%n",
this.nome, passador.getNome());
}
}
public static v
oid main(String[] args) {
final Amigo gabigol =
new Amigo("Gabigol");
final Amigo bh =
new Amigo("Bruno Henrique");
new Thread(new Runnable() {
public void run() { gabigol.passar(bh); }
}).start();
new Thread(new Runnable() {
public void run() { bh.passar(gabigol); }
}).start();
}
}
O que são?
Como usá-los?
Pra que usá-los?
Prove acesso aos dados
Cliente como um terminal
Thin Client
Threads e processos
Ilusão de múltiplas tarefas
Virtualização como ilusão
XServer Kernel
Visualizador de Janelas
Dependente de hardware
Xlib
Controle hardware, vídeo, teclado e mouse
Pode ser executado remotamente
Cliente Servidor
Window Managers
KDE -> Windows
Gnome -> Mac OS
Cinamon
Conceitos
Diferenças
Hardware e Software
Qualquer programa
Hardware e Software
Privilegiados
System calls
Sistema Operacional
Biblioteca ou API
De onde surgiu
Pra que serve?
Hardwares mudam Softwares não
Compartilhamento de recursos
O que sao?
Como funcionam?
Virtualizam SO.
Nova tendencia.
Sao leves.
Exemplos:
Docker, spring boot
Interfaces
Emular comportamento
JVM
Wine
Emular Hardware
Virtualbox, VMWare