sistemas distribuídos carlos a. g. ferraz di/ufpe aula 05
TRANSCRIPT
![Page 1: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/1.jpg)
Sistemas Distribuídos
Carlos A. G. Ferraz
DI/UFPE
Aula 05
![Page 2: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/2.jpg)
Tópicos O Modelo Cliente/Servidor
![Page 3: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/3.jpg)
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
![Page 4: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/4.jpg)
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
![Page 5: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/5.jpg)
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
![Page 6: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/6.jpg)
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
![Page 7: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/7.jpg)
O Modelo Cliente/Servidor (cont.)Motivação adicional: Armazenamento de grandes
quantidades de informações além do computador do clienteEx: WWW
![Page 8: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/8.jpg)
O Modelo Cliente/Servidor (cont.)Atividades de servidores e clientes: Distribuição / armazenamento Processamento Coleta de informação
![Page 9: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/9.jpg)
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 ...
![Page 10: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/10.jpg)
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
![Page 11: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/11.jpg)
O Modelo Cliente/Servidor (cont.)
Forças de mercado:
PCstandalone
Mainframemultiusuário
•Downsizing
•Upsizing
Mainframe
Servidor de PC
Cliente
•Rightsizing
![Page 12: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/12.jpg)
O Modelo Cliente/Servidor (cont.)Opiniões: PCistas Mainframistas Moderados
seguem as opiniões...
![Page 13: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/13.jpg)
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”
![Page 14: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/14.jpg)
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”
![Page 15: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/15.jpg)
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)
![Page 16: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/16.jpg)
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
![Page 17: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/17.jpg)
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
![Page 18: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/18.jpg)
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)
![Page 19: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/19.jpg)
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
![Page 20: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/20.jpg)
Alguns Tipos de Servidores
Servidores de arquivos Servidores de banco de dados Servidores de transações Servidores de objetos
![Page 21: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/21.jpg)
Servidores de Arquivos Retornam registros O cliente procura os dados no registro
retornado
clientes servidor
chamadas para arquivos
![Page 22: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/22.jpg)
Servidores de Banco de Dados
Retornam dados solicitados Mais eficientes
clientes DBMS
chamadas SQL
![Page 23: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/23.jpg)
Servidores de Transações
Grupo de instruções SQL é executado em sequência
Tudo-ou-nada
clientes DBMS
transações
TP monitor
![Page 24: Sistemas Distribuídos Carlos A. G. Ferraz DI/UFPE Aula 05](https://reader033.vdocuments.com.br/reader033/viewer/2022061618/552fc148497959413d8e1508/html5/thumbnails/24.jpg)
Servidores de Objetos
clientes servidorinvocação de método remoto
objeto
objetos
ORB ORB
mais detalhes em objetos distribuídos...