Microsserviços não é um conceito exato; trata-se de uma forma de projetar uma aplicação de modo a dividir o código completo em divisões menores e serviços. Não há uma definição exata de microsserviços; no entanto, quase todos têm as mesmas características. Trata-se da principal característica dos microsserviços:
- A)Utilização de uma única base de dados.
Errada, porque microsservicos normalmente privilegiam a separacao de dados e autonomia entre servicos, em vez de concentrar tudo em uma unica base.
- B)Sistema projetado para ter uma evolução contínua ao longo do tempo de vida do produto.
Certa, pois a arquitetura de microsservicos busca suportar evolucao continua do produto, com entregas frequentes e manutencao facilitada ao longo do tempo.
- C)Divisão do sistema em serviços menores em que cada serviço é insubstituível, atualizável e dependente uns dos outros.
Errada, porque microsservicos devem ser independentes e substituiveis, e nao insubstituiveis ou dependentes uns dos outros.
- D)Criação de equipes bem definidas que se dedicam apenas ao trabalho em uma área como, por exemplo, uma equipe para tratar da base de dados.
Errada, porque criar equipes por area pode combinar com organizacao por dominio, mas nao e a principal caracteristica da arquitetura de microsservicos.
Gabarito: B
Microsserviços sao uma forma de organizar a aplicacao em partes pequenas, cada uma com responsabilidade bem definida. A ideia nao e apenas “quebrar em pedacos”, mas permitir que cada servico possa evoluir com autonomia, sem exigir que o sistema inteiro seja mexido toda vez que algo muda. Isso conversa com principios como baixo acoplamento, alta coesao e entregas frequentes. Na pratica, um ambiente de microsservicos costuma ser pensado para acompanhar a evolucao continua do produto ao longo do tempo. Ou seja, o sistema nasce ja preparado para receber melhorias, ajustes e novas funcionalidades sem virar um monolito travado. Por isso, a alternativa B esta correta: ela descreve justamente essa capacidade de evoluir continuamente durante o ciclo de vida do produto. As demais alternativas escorregam em pontos importantes. Microsservicos normalmente evitam dependencia excessiva entre servicos e nao pressupoe uma unica base de dados para tudo. Tambem nao faz sentido dizer que um servico e insubstituivel, porque a arquitetura busca justamente facilitar manutencao, substituicao e deploy independente. Em doutrina de arquitetura de software, a ideia central e dividir para conquistar, mas com autonomia real entre as partes.