arquitetura de três níveis, que separa aplicações em três níveis de computação lógica e física, é a arquitetura predominante de software para aplicações cliente-servidor tradicionais.

o que é a arquitectura de três níveis?,

arquitetura de três níveis é uma arquitetura de aplicação de software bem estabelecida que organiza aplicações em três níveis de computação lógica e física: o nível de apresentação, ou interface de usuário; o nível de aplicação, onde os dados são processados; e o nível de dados, onde os dados associados com a aplicação são armazenados e gerenciados.

O principal benefício da arquitetura de três níveis é que, como cada nível funciona em sua própria infra-estrutura, cada nível pode ser desenvolvido simultaneamente por uma equipe de desenvolvimento separada, e pode ser atualizado ou escalado conforme necessário, sem afetar os outros níveis.,

Por décadas a arquitetura de três níveis foi a arquitetura predominante para aplicações cliente-servidor. Atualmente, a maioria das aplicações de três níveis são alvos de modernização, usando tecnologias nativas da nuvem, como contêineres e micro-serviços, e para migração para a nuvem.

os três níveis em detalhe

nível de apresentação

o nível de apresentação é a interface do utilizador e a camada de comunicação da aplicação, onde o utilizador final interage com a aplicação. Seu principal objetivo é exibir informações para e coletar informações do Usuário., Este nível de topo pode ser executado em um navegador web, como aplicação desktop, ou uma interface gráfica de usuário (GUI), por exemplo. Os níveis de apresentação Web são geralmente desenvolvidos usando HTML, CSS e JavaScript. Aplicativos Desktop podem ser escritos em uma variedade de idiomas, dependendo da plataforma.

nível de Aplicação

o nível de aplicação, também conhecido como nível lógico ou nível médio, é o coração da aplicação., Neste nível, a informação recolhida no nível de apresentação é processada – por vezes contra outra informação no nível de dados – utilizando a lógica de negócio, um conjunto específico de regras de Negócio. O nível de aplicação também pode adicionar, excluir ou modificar dados no nível de dados.

o nível de aplicação é tipicamente desenvolvido usando Python, Java, Perl, PHP ou Ruby, e se comunica com o nível de dados usando chamadas API.

Data tier

the data tier, sometimes called database tier, data access tier or back-end, is where the information processed by the application is stored and managed., Este pode ser um sistema de gerenciamento de banco de dados relacional como PostgreSQL, MySQL, MariaDB, Oracle, DB2, Informix ou Microsoft SQL Server, ou em um servidor de banco de dados NoSQL como Cassandra, CouchDB ou MongoDB. numa aplicação de três níveis, toda a comunicação passa pelo nível de Aplicação. O nível de apresentação e o nível de dados não podem se comunicar diretamente um com o outro.

Tier vs. layer

em discussões de arquitetura de três níveis, a camada é muitas vezes usada indistintamente – e erradamente – para tier, como em “camada de apresentação” ou “camada lógica de negócios”., não são iguais. Uma “camada” refere-se a uma divisão funcional do software, mas uma “camada” refere-se a uma divisão funcional do software que funciona em infra-estruturas separadas das outras divisões. O aplicativo de contatos em seu telefone, por exemplo, é uma aplicação de três camadas, mas uma aplicação de um único nível, porque todas as três camadas funcionam em seu telefone.

a diferença é importante, porque as camadas não podem oferecer os mesmos benefícios que os níveis.,

benefícios da arquitetura de três níveis

novamente, o principal benefício da arquitetura de três níveis sua separação lógica e física da funcionalidade. Cada nível pode ser executado em um sistema operacional separado e plataforma de servidor – por exemplo, servidor web, servidor de Aplicação, servidor de banco de dados – que melhor se encaixa seus requisitos funcionais. E cada nível é executado em pelo menos um hardware Servidor Dedicado ou servidor virtual, de modo que os Serviços de cada nível podem ser personalizados e otimizados sem impacto nos outros níveis.,

outros benefícios (em comparação com a arquitetura de um ou dois níveis) incluem:

  • desenvolvimento mais rápido: porque cada nível pode ser desenvolvido simultaneamente por equipes diferentes, uma organização pode trazer a aplicação para o mercado mais rápido, e programadores podem usar as mais recentes e melhores linguagens e ferramentas para cada nível.
  • escalabilidade melhorada: qualquer nível pode ser escalado independentemente dos outros, conforme necessário.melhoria da fiabilidade: uma interrupção num nível é menos susceptível de afectar a disponibilidade ou o desempenho dos outros níveis.,
  • segurança melhorada: como o nível de apresentação e o nível de dados não podem se comunicar diretamente, um nível de aplicação bem projetado pode funcionar como uma espécie de firewall interno, impedindo injecções SQL e outras façanhas maliciosas.

aplicação de três níveis no desenvolvimento web

no desenvolvimento web, os níveis têm nomes diferentes, mas executam funções semelhantes:

  • o servidor web é o nível de apresentação e fornece a interface do utilizador., Este é geralmente uma página web ou web site, como um site de comércio eletrônico onde o usuário adiciona produtos ao carrinho de compras, adiciona detalhes de pagamento ou cria uma conta. O conteúdo pode ser estático ou dinâmico, e é geralmente desenvolvido usando HTML, CSS e Javascript .
  • o servidor de aplicação corresponde ao nível médio, abrigando a lógica de Negócio usada para processar entradas do Usuário. Para continuar o exemplo de comércio eletrônico, este é o nível que consulta o banco de dados de inventário para devolver a disponibilidade do produto, ou adiciona detalhes ao perfil de um cliente., Esta camada frequentemente desenvolvida usando Python, Ruby ou PHP e executa um framework como e Django, Rails, Symphony ou ASP.NET por exemplo.
  • o servidor de base de dados é o nível de dados ou infra-estrutura de uma aplicação web. Ele roda em software de gerenciamento de banco de dados, como MySQL, Oracle, DB2 ou PostgreSQL, por exemplo.

outras arquitecturas multi-níveis

embora a arquitectura de três níveis seja facilmente a arquitectura de aplicações multi-níveis mais amplamente adoptada, existem outras que poderá encontrar no seu trabalho ou na sua investigação.,

de Duas camadas, arquitetura

Duas camadas a arquitetura é o original arquitectura cliente-servidor, consistindo de uma camada de apresentação e camada de dados; a lógica de negócios vive na camada de apresentação, a camada de dados ou ambos. Na arquitetura de dois níveis, o nível de apresentação – e, consequentemente, o usuário final-tem acesso direto ao nível de dados, e a lógica de negócios é muitas vezes limitada. Um simples aplicativo de gerenciamento de contatos, onde os usuários podem entrar e recuperar dados de contato, é um exemplo de uma aplicação de dois níveis.,

n-tier architecture

n-tier architecture-also called or multi – tier architecture-refers to any application architecture with more than one tier. Mas as aplicações com mais de três camadas são raras, porque camadas adicionais oferecem poucos benefícios e podem tornar a aplicação mais lenta, mais difícil de gerenciar e mais cara de executar. Como resultado, arquitetura n-tier e arquitetura multi-tier são geralmente sinônimos para arquitetura de três níveis.,

arquitectura de três níveis e IBM Cloud

IBM Cloud oferece produtos e serviços para o ajudar a modernizar as suas aplicações de três níveis legadas na sua viagem para cloud.

dê o primeiro passo:

  • Se você precisa de assistência com estratégia, processos ou capacidades—ou quer atenção de serviço completo-explore como IBM pode ajudar com a modernização da aplicação.
  • comece a usar middleware contendo que pode ser executado em qualquer cloud-all empacotado em IBM Cloud Paks.
  • migra facilmente as cargas de trabalho VMware existentes para a nuvem pública usando IBM Cloud para soluções VMware.,
  • planeie e execute as suas estratégias de modernização de aplicações como parte da sua transformação digital em curso com a ajuda dos serviços de modernização de aplicações da IBM.

comece com uma conta IBM Cloud hoje.