Nativo da nuvem é uma abordagem de desenvolvimento de aplicativos que utiliza tecnologias fundamentais de computação em nuvem para entregar desenvolvimento, implantação e gerenciamento consistentes em ambientes de nuvem híbrida.
As aplicações nativas em nuvem de hoje são construídas a partir de microsserviços e implementadas em contêineres que usam o Kubernetes, uma plataforma de orquestração de contêiner amplamente utilizada.
Os microsserviços são componentes de aplicativos levemente acoplados que abrangem sua própria pilha e podem ser implantados e atualizados independentemente uns dos outros. Eles se comunicam com uma combinação de APIs REST, agentes de mensagens e fluxos de eventos.
Contêineres são tarefas de execução leves que empacotam código de aplicativo, como microsserviços, junto com apenas as bibliotecas e dependências do sistema operacional necessárias para executar esse código em qualquer nuvem ou infraestrutura de TI tradicional.
Juntas, essas e outras tecnologias relacionadas criam uma plataforma poderosa, desenvolvida uma vez e implantada em qualquer lugar, para oferecer novos aplicativos de nuvem híbrida e modernizar os sistemas legados tradicionais para uso na nuvem. No entanto, também levam a um ambiente de desenvolvimento complexo que combina ainda mais aplicativos de software, fontes de dados, linguagens de programação, ferramentas e sistemas distribuídos.
O middleware pode resolver parte dessa complexidade. No entanto, executar aplicativos containerizados com middleware convencional pode adicionar complexidades próprias, incluindo a sobrecarga de infraestrutura que os contêineres foram projetados para eliminar. Por esse motivo, as plataformas de desenvolvimento de aplicativos em nuvem incluem middleware conteinerizado ou modularizado para que apenas as funções de conectividade necessárias possam ser empacotadas em um contêiner.