O que é um diagrama de arquitetura de sistema para aplicações web?
Embora o seguinte não seja uma representação perfeita da arquitetura do sistema em questão, e apesar da existência de outras arquiteturas, usei o diagrama a seguir no passado para explicar as camadas típicas da arquitetura de uma aplicação web.
Esta arquitetura suporta MVC, que defino abaixo de acordo com um slide antigo de um curso de treinamento de aplicações web que costumava fazer:
Onde a camada da arquitetura corresponde substancialmente a MVC como segue:
Embora os slides e assim por diante usados nesta resposta digam respeito a aplicações web baseadas em Java, os conceitos são genéricos.
Uma arquitetura mais recente é o uso de microserviços onde a arquitetura de uma aplicação é dividida em um conjunto de serviços, como segue:
Onde cada serviço tem um conjunto restrito e focado de responsabilidades, e são expostos independentemente na forma de APIs acessíveis remotamente, por exemplo, REST, consumidos usando protocolos como HTTP.
Um serviço de compras on-line poderia ter microserviços separados para contas de usuários, catálogo de produtos, manutenção do carrinho de compras e processamento de pedidos.
O framework Spring Boot foi projetado para este tipo de implementação.
Artigos semelhantes
- Um Samsung Galaxy Tab S6 Lite pode ser usado em estudos de arquitetura por estudantes de arquitetura?
- Qual é um bom software gratuito para fazer um diagrama de seqüência?
- O que é mais difícil, o desenvolvimento de aplicações web ou móveis? O que é mais difícil, web ou desenvolvimento de aplicações móveis?
- Quais são as dez principais aplicações de software para rastrear o feedback dos clientes para aplicações web e móveis?