Mind map
Arquitetura cliente-servidor multicamadas.
Map content
Arquitetura cliente-servidor multicamadas.
Modelo de uma cama
- chamado de sistemas centralizados ou
- arquitetura uni processada
- Mantem todos os recursos do sistema (banco de dados, regras de negócios e interfaces de usuário) em computadores de grande porte, os conhecidos mainframes.
- Os terminais cliente não fazem nada(Terminais burros ou mudos)
- o Mainframe faz todas as tarefas
Modelo de duas camadas
- Conhecido como: Modelo cliente e servidor de duas camadas
- Onde a execução é dividida, uma parte no servido e a outo no cliente
- A camada cliente
- Tem a função de prover a interface para que os usuários possam manipular as informações, ou seja, através dela realiza-se a interação entre o usuário e o sistema.
- É desenvolvida para se conectar diretamente ao banco de dados, tendo como responsabilidade fazer as solicitações dos dados necessários ao servidor, sendo que este os processa e devolve o resultado.
- regras de negócios
- Podem ficar armazenadas no cliente, no servidor ou em ambos
- A base do funcionamento desta técnica consiste em armazenar determinado volume de dados em um computador central e deixa-lo encarregado de manipulá-los e devolve-los à estação cliente que os requisitou.
- Conhecido como: Modelo cliente e servidor de duas camadas
Modelo multicamadas
- Conhecido como modelo cliente e servidor de várias camadas
- O princípio básico o fato de que a estação cliente jamais realiza comunicação direta com o servidor de banco de dados, mas sim com uma camada intermediária, e esta, com o banco de dados
- Pelo menos três camadas são necessárias
- Apresentação
- A camada de apresentação fica fisicamente localizada na estação cliente e é responsável por fazer a interação do usuário com o sistema
- É também conhecida como cliente, regras de interface de usuário ou camada de interface
- Regras de negócios
- É responsável por fazer as requisições ao banco de dados e todo o seu tratamento, ou seja, somente ela que tem acesso direto ao banco de dados
- É também conhecida como lógica de negócios, camada de acesso a dados, camada intermediária ou servidor de aplicação
- O servidor de aplicação é, geralmente, uma máquina dedicada e com elevados recursos de hardware, uma vez que é nele que ficam armazenados os métodos remotos (regras de negócios) e é realizado todo o seu tratamento e processamento.
- Banco de dados
- É onde fica localizado o sistema gerenciador de banco de dados
- É também conhecida como camada de dados
- Apresentação
- Vantagens sobre a técnica de duas camadas
- Modularização
- A modularização refere-se a separara lógica do negócio e regras de acesso ao banco de dados da camada de apresentação
- Assim sendo, as regras ficam centralizadas em um único local, ao contrário de em uma aplicação desenvolvida em duas camadas; na qual geralmente existe redundância nestas regras e uma mudança mesmo que pequena acarretará na redistribuição do aplicativo em cada estação cliente
- Facilidade de redistribuição
- Como as estações clientes acessam uma mesma camada em comum, qualquer alteração realizada nas regras de negócios será vista por todas as aplicações clientes.
- Clientes leves (thin-clients)
- Aplicação cliente apresenta grande diminuição de código e todo o trabalho de instalação é bastante reduzido, possuindo somente uma configuração para o cliente ter acesso à camada intermediária.
- Por esta razão, há diminuição de custos, uma vez que não existe necessidade de fazer upgrade nas estações clientes que apresentam poucos recursos de hardware ou que são computadores antigos.
- Aplicação cliente apresenta grande diminuição de código e todo o trabalho de instalação é bastante reduzido, possuindo somente uma configuração para o cliente ter acesso à camada intermediária.
- Economia de licenças de acesso ao banco de dados
- Visto que muitos fabricantes de sistemas gerenciadores de banco de dados cobram taxas por licenças adicionais para utilização dessas bibliotecas, com o modelo multicamadas elas ficam localizadas somente na camada de acesso a dados, eliminando assim custos extras com licenças.
- Economia de conexões no servidor
- No modelo de duas camadas, quinhentas estações clientes conectadas simultaneamente no servidor, o mesmo número de conexões no banco de dados serão realizadas, uma para cada cliente.
- Numa arquitetura multicamadas isso não ocorre, porque se uma conexão for realizada pelo servidor de aplicação, está será compartilhada por todas as máquinas que nele se conectarem.
- No modelo de duas camadas, quinhentas estações clientes conectadas simultaneamente no servidor, o mesmo número de conexões no banco de dados serão realizadas, uma para cada cliente.
- Escalabilidade
- Serve para evitar a queda de desempenho, quando um grande número de máquinas clientes simultâneas se conecta ao servidor. Este fato é conhecido como gargalo de rede e mesmo que o servidor seja um computador potente e localizado em uma rede veloz, pode ocorrer o problema de gargalo de I/O (Input/Output) na máquina servidora.
- No modelo multicamadas este problema pode ser evitado, uma vez que é possível ter a mesma regra de negócio dividida entre vários servidores através do balanceamento de carga, ou seja, quando algum deles ficar sobrecarregado o outro entra em ação para ajudá-lo. Se ocorrer algum problema com algum servidor e este não puder mais responder as requisições (ficar off-line, por exemplo), outro servidor poderá entrar em seu lugar.
- Serve para evitar a queda de desempenho, quando um grande número de máquinas clientes simultâneas se conecta ao servidor. Este fato é conhecido como gargalo de rede e mesmo que o servidor seja um computador potente e localizado em uma rede veloz, pode ocorrer o problema de gargalo de I/O (Input/Output) na máquina servidora.
- Independência
- de localização
- Visto que esta arquitetura utiliza objetos distribuídos, o servidor de banco de dados e o servidor de aplicação podem estar fisicamente distantes da aplicação cliente.
- de linguagem de programação
- Como são utilizadas interfaces na construção da arquitetura, uma camada de regras de negócios construída sobre o protocolo COM, por exemplo, pode ser acessada por aplicações clientes desenvolvidas em diversas linguagens de programação que possuem suporte ao COM.
- de sistema gerenciador de banco de dados
- Numa arquitetura multicamadas, o banco de dados é utilizado somente como um contêiner para armazenar as tabelas e dados, pois quando recursos como triggers e stored procedures são implementados, ocorre uma ligação direta da aplicação com o banco de dados, fato que pode tornar bastante trabalhoso o processo de migração no caso da aplicação mudar de banco de dados.
- Isto ocorre porque cada solução possui suas particularidades, ou seja, a construção de uma trigger ou stored procedure em determinada ferramenta geralmente será diferente de outra. Por isso, em sistemas multicamadas deve-se evitar usar tais recursos, deixando o servidor de aplicação encarregado deste controle.
- Numa arquitetura multicamadas, o banco de dados é utilizado somente como um contêiner para armazenar as tabelas e dados, pois quando recursos como triggers e stored procedures são implementados, ocorre uma ligação direta da aplicação com o banco de dados, fato que pode tornar bastante trabalhoso o processo de migração no caso da aplicação mudar de banco de dados.
- de localização
- Modularização
Information
- Description
- Concursos Públicos Programação de sistemas Mind Map on Arquitetura cliente-servidor multicamadas., created by Abel mendonça on 02/10/2017.
- Created by
- Abel mendonça
- Views
- 0
- Rating