Asp.net MVC ou Web API?
04/04/2017
0
Uma pergunta a comunidade do fórum: toda aplicação asp.net MVC pode ser considerada monolítica?
E toda aplicação asp.net Web API pode ser considerada microsserviço?
Qual a diferença entre ambas propostas?
Gladstone Matos
Post mais votado
04/04/2017
Eu vejo assim: Uma aplicação constituída somente por um "componente" asp.net MVC seria considerada monolítica, afinal, caso ocorra uma alteração, seria necessário realizar o "rebuild" e implantação da aplicação como um todo.
Microsserviços é uma arquitetura que foca em desenvolver serviços "leves" com um objetivo único. Assim, na minha opinião, uma aplicação ASP.NET Web API que tenha uma única "função", seria considerada um serviço dentro de uma arquitetura de microsserviços.
Na minha opinião, existem pros e contras. Chamadas remotas são mais "caras" que chamadas no mesmo "processo". Por outro lado, microsserviços podem ser implantados e escalados de maneira independente, até mesmo podem ser escritos em outra linguagem. Uma aplicaçao monolítica, por outro lado, tem de ser escalada ou implantada de maneira completa, mesmo que apenas uma parte ou outra requisite esse aumento de recursos.
Um abraço
Luis Mesa
Mais Posts
05/04/2017
Eduardo Spinola
Caso você tenha uma solução ASP.NET Web API com diferentes serviços implementados, compilados e distribuídos como um único pacote, ainda assim você terá uma solução monolítica.
A proposta da arquitetura de microsserviços é fornecer serviços menores que consigam atender a uma regra de negócio para o funcionamento do sistema, seja essa regra voltada para entregar um conjunto de funcionalidades ao usuário final, seja ela voltada para a comunicação entre diferentes microsserviços. Ainda mais, que o empacotamento e distribuição desses serviços aconteça de forma independente, com a possibilidade de desenvolvimento utilizando tecnologias diferentes (linguagem de programação, frameworks, ...), o que leva à criação de serviços que possam adotar o que tiver de melhor em termos de linguagem de programação (e seus recursos), em termos de armazenamento de informações (base de dados) e em termos de processamento (escolha do servidor, com mais memória ou poder de processamento).
Mas, voltando à pergunta: nem toda aplicação ASP.NET MVC pode ser considerada uma solução monolítica e nem toda aplicação ASP.NET Web API pode ser considerada um microsserviço.
05/04/2017
Gladstone Matos
05/04/2017
Luis Mesa
De nada, Gladstone! Agradeço também a resposta do Eduardo Spinola por especificar melhor alguns pontos dados na minha. :)
Bons estudos!
05/04/2017
Eduardo Spinola
Clique aqui para fazer login e interagir na Comunidade :)