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.
![main-qimg-7860c44ef5d2b1e39fac7b4d39708e4e.webp](https://qph.fs.quoracdn.net/main-qimg-7860c44ef5d2b1e39fac7b4d39708e4e.webp)
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:
![main-qimg-b7b363e18f0c62a7b91018bce532c75c.webp](https://qph.fs.quoracdn.net/main-qimg-b7b363e18f0c62a7b91018bce532c75c.webp)
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?