O que são microsserviços?

microservices_600x300

Os microsserviços descrevem o processo arquitetônico de criação de um aplicativo distribuído a partir de serviços implantáveis separadamente que executam funções de negócios específicas e se comunicam por interfaces da Web. As equipes de DevOps incluem partes individuais de funcionalidade em microsserviços e criam sistemas maiores combinando os microsserviços como blocos de construção.

Os microsserviços aplicam um exemplo do princípio aberto/fechado:

  • Eles estão abertos para extensão (usando as interfaces que eles expõem)
  • Eles são fechados para modificação (cada um é implementado e versionado independentemente)

Os microsserviços oferecem muitos benefícios em relação às arquiteturas monolíticas:

  • Eles podem remover pontos únicos de falha (SPOFs) garantindo que os problemas em um serviço não travem nem afetem outras partes de um aplicativo.
  • Os microsserviços individuais podem ser expandidos de forma independente para fornecer disponibilidade e capacidade extras.
  • As equipes de DevOps podem estender a funcionalidade adicionando novos microsserviços sem afetar desnecessariamente outras partes do aplicativo.

O uso de microsserviços pode aumentar a velocidade da equipe. As práticas de DevOps, como Integração Contínua e Entrega Contínua, são usadas para conduzir implantações de microsserviços. Os microsserviços complementam bem as arquiteturas de aplicativos baseadas em nuvem, permitindo que as equipes de desenvolvimento de software aproveitem cenários como programação orientada por eventos e dimensionamento automático. Os componentes dos microsserviços expõem APIs (interfaces de programação de aplicativos), geralmente sobre protocolos REST, para comunicação com outros serviços.

Uma prática cada vez mais comum é usar clusters de contêiner para implementar microsserviços. Os contêineres permitem o isolamento, o empacotamento e a implantação de microsserviços, enquanto a orquestração expande um grupo de contêineres em um aplicativo.

Próximas etapas

Saiba mais sobre microsserviços no Azure.