Arquitetura de Microsserviços e Tecnologia de Contêiner Explicadas

Este texto é de Bob Johnson e está disponível em: https://www.iron.io/microservices-architecture-and-container-technology-explained/


Para lutar por espaço no mundo dos serviços e aplicações baseados na web, é necessário ter um olho rápido e um braço forte de desenvolvimento de software, e as empresas em todo lugar buscam novas formas de aumentar a agilidade e encurtar o time-to-market.

Uma das formas é com microsserviços, uma arquitetura de sistemas que suporta a construção de aplicações complexas com processos menores e independentes, que existem como mini-aplicações autônomas. Esses componentes individuais se comunicam por APIs agnósticas de linguagem e protocolos simples como invocações remotas de métodos (RMI), webservices restful, ou push messaging, por exemplo.

Essa abordagem modular pode tornar fácil para as empresas espalhar as cargas de trabalho por múltiplas equipes de desenvolvimento, espalhadas por diferentes departamentos ou negócios, oferecendo um grau maior de flexibilidade e ajudando a acelerar o ciclo de vida do projeto.

Cada componente tem seu próprio armazenamento, memória ou recursos de CPU, o que torna a utilização de hardware simples para prover e acompanhar, particularmente em plataformas baseadas na nuvem, como ambientes PaaS. As equipes de desenvolvimento podem usar quaisquer padrões ou tecnologias que preferirem, desde que garantam ser interoperáveis com os componentes que formarão a aplicação final.

Enquanto o gerenciamento da complexidade é às vezes reduzida com a arquitetura de microsserviços, há a necessidade de uma boa comunicação das equipes, especialmente ao monitorar o processo na produção e garantir que as atualizações em um componente não tenham efeitos adversos em outros. Mas a necessidade de uma documentação formal meticulosa também torna mais fácil para novatos entenderem o código mais rapidamente.

Os primeiros usuários da arquitetura de microsserviços incluem Amazon Web Services (AWS), Google, eBay e Netflix, os quais aprimoraram a entrega contínua e frequentemente atualizavam as aplicações e serviços que entregavam na internet para os PCs, tablets e smartphones dos clientes.

Com defensores de tão alto nível, não é surpresa que a familiaridade com o conceito de microsserviços pareça tão difundida. De 100 funcionários seniores de TI dos EUA, do Reino Unido, de Israel e da Índia entrevistados pela pesquisa da IDG Connect, somente 6% disse não ter qualquer conhecimento da arquitetura de microsserviços. E, apesar de apenas uma minoria (10%) dizer que já implantaram alguma forma de arquitetura de microsserviços, mais de um quarto (28%) revelou ter planos para implantar algo no próximo ano, e outros 27% em algum ponto no futuro.

Com tanta atividade no desenvolvimento de serviços e aplicações centralizadas em ambientes hospedados na nuvem, a arquitetura de microsserviços veio a depender pesadamente do uso da tecnologia de containerização. Os contêiners isolam os processos e as aplicações de microsserviços em instâncias menores que utilizam apenas o sistema operacional virtualizado, em vez de toda a máquina virtual e todo o complemento abstraído do hardware que a máquina virtual inclui.

Exemplos comuns e amplamente empregados dos contêineres incluem o Docker, uma implementação baseada em Linux e de código aberto, amparada por empresas de software como Canonical, Red Hat e Parallels. Serviços de PaaS consagrados, incluindo Google App Engine, Red Hat Open Shift, e o Cloud Foundry da VMware, também usam a tecnologia de Contêineres Linux (LXC).

Apesar de ainda ser uma tecnologia emergente, os planos para os contêineres também parecem estar bem avançados em várias empresas. A pesquisa do IDG Connect revelou que 18% das empresas já implantaram alguma forma de plataforma de conteinerização, por exemplo, e outros 57% planejam fazer o mesmo em algum momento no futuro. Somente 3% disse que não tinham planos para contêineres, indicando que a combinação de microsserviços e contêiners vai ser o ingrediente mais difundido na atividade de desenvolvimento de aplicações e serviços no futuro próximo.

 

 

Anúncios
Marcado com: , ,
Publicado em Microsserviços

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: