Visão Geral de uma aplicação de três níveis.
Three-tier architecture is a client-server software architecture pattern in which the user interface (presentation), functional process logic (“business rules”), computer data storage and data access are developed and maintained as independent modules, most often on separate platforms. Foi desenvolvido por John J. Donovan em Open Environment Corporation (OEC), uma empresa de ferramentas que ele fundou em Cambridge, Massachusetts.,para além das vantagens habituais do software modular com interfaces bem definidas, a arquitectura de três níveis destina-se a permitir que qualquer um dos três níveis seja actualizado ou substituído independentemente em resposta a alterações nos requisitos ou tecnologias. Por exemplo, uma mudança do sistema operacional no nível de apresentação afetaria apenas o código da interface do Usuário.,
Normalmente, a interface de usuário é executado em um desktop de um PC ou estação de trabalho e utiliza um padrão de interface gráfica do usuário, funcional, lógica de processo, que pode consistir de um ou mais módulos separados em execução em uma estação de trabalho ou servidor de aplicação, e um RDBMS no servidor de banco de dados ou de mainframe que contém o computador de armazenamento de dados lógica. O nível médio pode ser multitiered ele mesmo (neste caso a arquitetura global é chamada de uma “arquitetura n-tier”).
nível de apresentação Este é o nível mais alto da aplicação., O nível de apresentação apresenta informações relacionadas com serviços como a navegação de mercadorias, compra e conteúdo do carrinho de compras. Comunica com outros níveis através dos quais distribui os resultados ao nível do navegador/cliente e a todos os outros níveis da rede. Em termos simples, é uma camada que os usuários podem acessar diretamente (como uma página web, ou GUI de um sistema operacional). Application tier (business logic, logic tier, or middle tier) The logical tier is pulled out from the presentation tier and, as its own layer, it controls an application’s functionality by performing detailed processing., Lista de dados a lista de dados inclui os mecanismos de persistência de dados (servidores de bases de dados, ações de arquivos, etc.) e a camada de acesso de dados que encapsula os mecanismos de persistência e expõe os dados. A camada de acesso aos dados deve fornecer uma API ao nível de aplicação que expõe métodos de gestão dos dados armazenados sem expor ou criar dependências dos mecanismos de armazenamento de dados. Evitar dependências dos mecanismos de armazenamento permite atualizações ou alterações sem que os clientes de nível de aplicação sejam afetados ou mesmo conscientes da mudança., Tal como acontece com a separação de qualquer nível, há custos para a implementação e, muitas vezes, custos para o desempenho em troca de melhor escalabilidade e manutenção.
desenvolvimento Web usageEdit
No desenvolvimento web de campo, de três camadas é muitas vezes usado para se referir a sites, geralmente em sites de comércio eletrônico, que são construídos usando três camadas:
- Um servidor web front-end servir conteúdo estático, e, potencialmente, algumas em cache de conteúdo dinâmico. Na aplicação baseada na web, front end é o conteúdo renderizado pelo navegador. O conteúdo pode ser estático ou gerado dinamicamente.,
- um servidor de aplicações de nível de processamento de conteúdo dinâmico médio e de geração (por exemplo, Simfonia, Primavera, ASP.NET Django, Rails, Node.js).
- uma base de dados back-end ou armazenamento de dados, compreendendo tanto conjuntos de dados e o software do sistema de gerenciamento de banco de dados que gerencia e fornece acesso aos dados.
outras consideraçõesedit
a transferência de dados entre níveis faz parte da arquitectura. Os protocolos envolvidos podem incluir um ou mais de SNMP, CORBA, Java RMI,. net Remoting, Windows Communication Foundation, sockets, UDP, web services ou outros protocolos padrão ou proprietário., Muitas vezes middleware é usado para conectar os níveis separados. Níveis separados muitas vezes (mas não necessariamente) funcionam em servidores físicos separados, e cada nível pode ser executado em um cluster.
Deixe uma resposta