A arquitetura de micro serviços é utilizada para desenvolver uma aplicação como um conjunto de pequenos serviços, cada um funcionando em seu próprio processo. Cada serviço é desenvolvido em torno de um conjunto de regras de negócio específico, e é implementado de forma independente.
Com isso, consegue-se quebrar algumas barreiras existentes no modelo de arquitetura monolítica:
Manutenção e evolução dos serviços mais estáveis
Os desenvolvedores tratarão de códigos que executam uma única função, e cada serviço individual não cresce indefinidamente com o crescimento do sistema.
Serviços com baixo nível de acoplamento e interdependência
Dessa forma, a manutenção em um serviço não interfere diretamente em outras funcionalidades do sistema.
Escalabilidade do sistema
É obtida com o deploy e replicação de micro serviços através da infraestrutura de servidores, máquinas virtuais e containers de forma independente. Isso torna o crescimento e a possibilidade de adaptação do sistema muito mais flexível.
Redução de custos
Como cada aplicação só utiliza os serviços de que necessita, os custos são diretamente associados à funcionalidade e à carga de uso do sistema, não sendo necessário carregar custos associados a funcionalidades não utilizadas.
Flexibilidade de tecnologia
Não é necessário amarrar os desenvolvedores a uma tecnologia específica, pois há baixo acoplamento entre os serviços. Dessa forma, pode ser utilizada a melhor tecnologia para atender a cada caso, além da possibilidade de evoluir o sistema continuamente, diminuindo o risco da obsolescência tecnológica.
Facilidade de colocar alterações em produção
As mudanças no sistema são feitas através das alterações e evoluções feitas nos serviços. Assim, não existe um sistema que precisa ser reinicializado para continuar funcionando. O time de desenvolvimento que precisará acompanhar a mudança será o time responsável pelos serviços que estão sendo alterados.
Fonte:https://www.opus-software.com.br/micro-servicos-arquietura-monolitica/
GABARITO LETRA C
==========================================================================
A)que executam diversas funções cada um e crescem na mesma proporção do sistema.
INCORRETA => Na arquitetura de microserviços, cada pequeno serviço executa apenas uma função muito específica;
B)que, quando alterados, necessitarão da reinicialização de todo o sistema.
INCORRETA => Na realidade é possível se reiniciar apenas o serviço pretendido;
D)que tornam o crescimento e a possibilidade de adaptação do sistema pouco flexíveis.
INCORRETA => Exatamente o contrário, o objetivo é tornar o sistema o mais flexível possível
E)associados a uma tecnologia específica que prende os desenvolvedores aos fabricantes desta tecnologia.
INCORRETA => Na realidade é exatamente o contrário, os microserviços foram idealizados para tornar os serviços totalmente independente de tecnologia específica.