Asp.net MVC ou Web API?

04/04/2017

0

bom dia people

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

Gladstone Matos

Responder

Post mais votado

04/04/2017

Boa noite, Gladstone

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

Luis Mesa
Responder

Mais Posts

05/04/2017

Eduardo Spinola

Ter uma aplicação desenvolvida com ASP.NET Web API não significa que você tem um microsserviço. No entanto, caso opte por adotar esse novo padrão arquitetural, você terá mais facilidade em migrar para microsserviços do que se tivesse uma solução implementada com o ASP.NET MVC.

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.
Responder

05/04/2017

Gladstone Matos

WOW não esperava respostas tão concisas! MUITO obrigado Eduardo Spinola e Luis Felipe pela iluminação! Grande abraço :)
Responder

05/04/2017

Luis Mesa

WOW não esperava respostas tão concisas! MUITO obrigado Eduardo Spinola e Luis Felipe pela iluminação! Grande abraço :)


De nada, Gladstone! Agradeço também a resposta do Eduardo Spinola por especificar melhor alguns pontos dados na minha. :)


Bons estudos!
Responder

05/04/2017

Eduardo Spinola

Que é isso, pessoal, não precisa agradecer. Conhecimento gera conhecimento! :P
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar