Microsserviço é um tipo de arquitetura de desenvolvimento de aplicativos que permite que um sistema grande seja separado em vários serviços menores, segue alguns benefícios como:
- Agilidade na manutenção: já que os sistemas são menores é mais fácil fazer uma alteração no fonte assim tornando mais rápido a resolução de problemas e a entrega de novas funcionalidades.
- Escalabilidade: Estando separados, com serviços separados a escalabilidade é feita de forma independente.
- Resiliência: Com os microsserviços, os aplicativos lidam com a falha total do serviço degradando a funcionalidade, sem interromper todo o aplicativo.
Segue alguns exemplos de dados e seus microserviços
- Venda fica no microserviço Comercial
- Compartilhamento e Loja ficam no microserviço de Dados básicos
- Lotes e Loja lotes ficam no microserviço de Controle
- Cliente ficam no microserviço de cliente
Segue um desenho para um melhor entendimento dessa arquitetura
Um dos grandes motivos de se utilizar microsserviços é a resiliência, como os serviços não estão em um monolito, quando um serviço está fora do ar os outros serviços continuam funcionando.
Segue um desenho de exemplo dessa comunicação: