TIPOS DE ARQUITETURAS - SOD
Arquiteturas Centralizadas
No modelo básico de cliente-servidor, os processos em um sistema distribuído são divididos em dois grupos (possivelmente em sobreposição). Um servidor é um processo de execução de algum serviço, por exemplo, um serviço de sistema de arquivos ou um serviço de banco de dados. Um cliente é um processo que solicita um serviço de um servidor, enviando-lhe um pedido e, posteriormente, à espera de resposta do servidor.
Modelo cliente-servidor
Comportamento de requisição-resposta
Como estabelecer a comunicação?
Protocolo sem conexão
- Protocolo simples, que funciona bem em redes locais.
- Cliente empacota uma mensagem para o servidor diretamente.
- Eficiente se NÃO ocorrem problemas.
- Exemplo: Falhas → Transferência bancárias.
- Operações podem ser repetidas sem causar danos.
Protocolo orientado a conexão
– Solução funciona bem em sistemas de longa distância.
– Sempre que um cliente requisita um serviço, primeiro se estabelece conexão com o servidor e depois se envia a requisição.
Como distinguir entre cliente e servidor?
– Exemplo: Servidor de banco de dados distribuído → repassa requisições a servidores de arquivos.
Considerando que muitas aplicações visam dar suporte ao acesso de usuários a banco de dados:
Nível de interface de usuário:
– Consiste em programas que permitam aos usuários finais interagir com aplicações.
– Diversos níveis de complexidade.
Nível de processamento
– Normalmente contém as aplicações.
– Exemplo: Análise de dados financeiros que pode exigir métodos e técnicas sofisticados de estatística.
Nível de dados
– Na sua forma mais simples, consiste em um sistema de arquivos – Mais comum utilizar um banco de dados.
– Normalmente implementado no lado servidor.
– Mantem os dados consistentes.
– Dados costumam ser persistentes.
Arquiteturas Descentralizadas
O trato Cliente-servidor possui duas distribuições:
Distribuição vertical: A principal característica da