Sistemas Multimídia Distribuídos Projeto Carlos A. G. Ferraz [email protected].
Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05.
Transcript of Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05.
Sistemas Distribuídos
Carlos A. G. Ferraz
DI/UFPE
Aula 05
Tópicos O Modelo Cliente/Servidor
O Modelo Cliente/Servidor
Modelo OSI: A incorporação dos headers gera um grande
overhead Em WANs, onde a velocidade (bps) é
geralmente baixa (mudanças a vista...), o overhead não é tão significativo
Em consequência da perda de desempenho, muitos sistemas distribuídos, ou não usam, ou usam apenas um subconjunto da pilha de protocolos
O Modelo Cliente/Servidor (cont.) O modelo OSI trata apenas de
uma parte do problema: a transferência de dados entre a parte que envia e a parte que recebe
A estruturação do sistema distribuído não é tratada...
O modelo cliente/servidor é uma resposta
O Modelo Cliente/Servidor (cont.) Para evitar o overhead de
protocolos como OSI e TCP/IP, o modelo cliente/servidor se baseia num protocolo simples, sem conexão, chamado pedido-resposta (request-reply)
Vantagens: simplicidade e eficiência
O Modelo Cliente/Servidor (cont.)Motivação: Distribuição da carga de trabalho
de componentes de sistema Uma aplicação é separada em
dois componentes: o cliente e o servidor
Esta distribuição da carga de trabalho toma diferentes formas dependendo da aplicação em particular
O Modelo Cliente/Servidor (cont.)Motivação adicional: Armazenamento de grandes
quantidades de informações além do computador do clienteEx: WWW
O Modelo Cliente/Servidor (cont.)Atividades de servidores e clientes: Distribuição / armazenamento Processamento Coleta de informação
O Modelo Cliente/Servidor (cont.)O modelo é a forma mais usada
para implementação de Sistemas Distribuídos, fazendo convergir:
Interfaces gráficas Máquinas potentes de baixo
custo Redes confiáveis
consequentemente ...
O Modelo Cliente/Servidor (cont.) Arquitetura resultante:
Flexível Versátil Custo adequado
A computação cliente/servidor tenta tirar o máximo de vantagens de todos os recursos disponíveis
O Modelo Cliente/Servidor (cont.)
Forças de mercado:
PCstandalone
Mainframemultiusuário
•Downsizing
•Upsizing
Mainframe
Servidor de PC
Cliente
•Rightsizing
O Modelo Cliente/Servidor (cont.)Opiniões: PCistas Mainframistas Moderados
seguem as opiniões...
O Modelo Cliente/Servidor: Opiniões PCistas
“A computação cliente-servidor reduz a ferro-velho os mainframes e acaba com a computação centrada em hosts”
O Modelo Cliente/Servidor: Opiniões Mainframistas
“A computação cliente-servidor faz surgir uma nova linhagem de mainframes renascidos conectados em rede... Fazendo os PCs voltarem para suas caixas”
O Modelo Cliente/Servidor: Opiniões Moderados
“A computação cliente-servidor permite coexistência e abertura, onde todos podem ter o seu lugar”
(vide rightsizing)
O Modelo Cliente/Servidor (cont.)Características Uma arquitetura cliente/servidor
consiste de um processo cliente e um processo servidor, distintos um do outro, embora possam interagir totalmente
O servidor é um provedor de serviços; o cliente é um consumidor desses serviços
Cliente/Servidor: Características (cont.)
A parte cliente e a parte servidor podem operar em diferentes plataformas
Tanto a plataforma do cliente como a do servidor podem ser atualizadas sem que se tenha que atualizar a outra plataforma
O servidor pode atender a vários clientes ao mesmo tempo; em alguns casos, o cliente pode acessar vários servidores
Cliente/Servidor: Características (cont.)
Sistemas cliente/servidor são capazes de operar em rede
A parte da lógica do aplicativo reside no cliente A ação, em geral, é iniciada no cliente (contra-
exemplo: servidores de banco de dados podem iniciar a ação baseados em gatilhos)
A interface gráfica geralmente reside no cliente (ex: web-browsers)
Cliente/Servidor: Características (cont.)
Compartilhamento de recursos Transparência de localização O software cliente/servidor ideal é
independente de hardware e de sistema operacional
Trocas baseadas em mensagens
Alguns Tipos de Servidores
Servidores de arquivos Servidores de banco de dados Servidores de transações Servidores de objetos
Servidores de Arquivos Retornam registros O cliente procura os dados no registro
retornado
clientes servidor
chamadas para arquivos
Servidores de Banco de Dados
Retornam dados solicitados Mais eficientes
clientes DBMS
chamadas SQL
Servidores de Transações
Grupo de instruções SQL é executado em sequência
Tudo-ou-nada
clientes DBMS
transações
TP monitor
Servidores de Objetos
clientes servidorinvocação de método remoto
objeto
objetos
ORB ORB
mais detalhes em objetos distribuídos...