Microsserviço refere-se a um estilo de arquitetura para o desenvolvimento de aplicativos. Neste modelo, cada microsserviço é criado para acomodar um recurso do aplicativo e realizar suas tarefas de maneira distinta.
Autônomos: cada serviço pode ser desenvolvido, implantado, operado e escalado de maneira independente.
Especializado: cada serviço pode ser projetado visando a solução de um problema específico
Escalabilidade: cada serviço pode ser dimensionado e escalado de maneira independente em se tratando de infraestrutura
Agilidade: cada serviço pode ser administrado por uma equipe específica, em um contexto relativamente pequeno e focado
Implantação: cada serviço pode ser administrado de maneira independente em se tratando de sua integração e entrega. Rotinas de aperfeiçoamento, manutenção e automação de serviços podem ser gerenciadas da maneira que melhor convir.
Desenvolvimento inicial: diz-se mais simples começar o desenvolvimento de aplicações monolíticas por não ser necessário muito planejamento prévio.
Depuração: diz-se mais simples depurar uma aplicação monolítica pelo fato de que o código existe todo em um único ambiente de programação e não em vários serviços diferentes que precisam ser sincronizados e analisados individualmente.
Implantação: diz-se mais simples realizar a implantação de aplicações monolíticas por ser necessário gerenciar apenas um único conjunto de código base e respectivas dependências.
Gerenciamento/orquestração. Esse componente é responsável por colocar serviços em nós, identificar falhas, rebalancear serviços entre nós e assim por diante. Normalmente, esse componente é uma tecnologia pronta para uso, como Kubernetes, em vez de algo criado de maneira personalizada.
Gateway de API. O gateway de API é o ponto de entrada para os clientes. Em vez de chamar serviços diretamente, os clientes chamam o gateway de API, que encaminha a chamada para os serviços adequados no back-end.
https://learn.microsoft.com/pt-br/azure/architecture/guide/architecture-styles/microservices