Flex Gateway Novo
API Governance Novo
Monitoring API ManagerFlex Gateway Novo
API Governance Novo
Monitoring API ManagerAs arquiteturas microsserviços constituem tendência importante de software que pode afetar profundamente não só a TI corporativa, como também a transformação digital de todos os negócios.
Quais são as diferenças entre uma arquitetura de microsserviços e uma arquitetura monolítica? E, o mais importante, com o avanço de gigantes da tecnologia, como Netflix, Google e Amazon em direção à arquitetura de microsserviços — quais são os benefícios dessas arquiteturas?
Primeiramente, vamos comparar a arquitetura de microsserviços e a monolítica. Um aplicativo monolítico é desenvolvido como unidade única. Aplicativos corporativos são desenvolvidos em três partes:
Isso é o que caracteriza uma arquitetura monolítica — é um executável lógico único. Para fazer alterações no sistema, um desenvolvedor precisa criar e implementar uma versão atualizada do aplicativo no lado do servidor.
Ao contrário de uma arquitetura monolítica, os recursos de microsserviços são expressos formalmente com APIs orientadas por negócios. Elas encapsulam um recurso corporativo essencial e a implementação do serviço — que pode envolver integrações com sistemas de registro — é completamente ocultada, pois a interface é definida puramente em termos de negócios.
Por serem considerados ativos valiosos para os negócios, os serviços são considerados implicitamente como adaptáveis para uso em vários contextos. O mesmo serviço pode ser reutilizado em mais de um processo corporativo, em diferentes canais de negócios ou pontos de contato digitais.
As dependências entre os serviços e respectivos consumidores diminuem com a aplicação do princípio de acoplamento flexível. Ao padronizar os contratos, conforme expresso pelas APIs orientadas por negócios, os consumidores não são afetados por mudanças na implementação dos serviços. Isso permite que seus proprietários alterem a implementação e modifiquem os sistemas de registro ou até mesmo as composições dos serviços — que estejam por trás da interface e os substituam sem nenhum impacto posterior.
Os processos tradicionais de desenvolvimento de software (cascata, ágil etc.) geralmente resultam em equipes relativamente grandes que trabalham em um único artefato de implementação monolítico. Gerentes de projeto, desenvolvedores e a equipe operacional podem alcançar graus variados de sucesso com esses modelos, liberando os aplicativos candidatos para verificação pela empresa, principalmente à medida que ela ganha experiência no uso de um software e de uma pilha de implementação específicos. No entanto, há alguns problemas à espreita nas abordagens tradicionais:
Uma arquitetura de microsserviços — combinada com tecnologias de implementação em nuvem, API Management e tecnologias de integração — oferece uma abordagem diferente ao desenvolvimento de software. Em vez disso, o monólito é "dividido" em um conjunto de serviços independentes que são desenvolvidos, implementados e mantidos separadamente. Isso tem as seguintes vantagens:
A desvantagem dessa flexibilidade é a complexidade. O gerenciamento de uma infinidade de serviços distribuídos em escala é difícil por duas razões principais:
É importante que você se certifique de que a entrega de microsserviços seja cuidadosamente gerenciada e que o nível de automação do SDLC seja o mais alto possível. A falta de coordenação e automação da equipe nos moldes do DevOps pode levar sua iniciativa de microsserviços a trazer mais desvantagens do que benefícios.
Está pronto para começar a trabalhar com microsserviços? Leia nosso Guia sobre as práticas recomendadas para a criação de microsserviços.
Dúvidas? Pergunte a um especialista.
You have been redirected
You have been redirected to this page because Servicetrace has been acquired by MuleSoft. Click here to learn more.
You have been redirected
After 17 years of reporting on the API economy, ProgrammableWeb has made the decision to shut down operations.
Click here to learn more.