Criar aplicativos nativos de nuvem

Cache para Redis
Banco de Dados para PostgreSQL
Funções
Serviço de Kubernetes
Hubs de Notificação

Ideias de solução

Este artigo é uma ideia de solução. Se você quiser expandir o conteúdo com mais informações, como possíveis casos de uso, serviços alternativos, considerações de implementação ou diretrizes de preços, informe-nos fornecendo comentários do GitHub.

Este artigo apresenta uma solução para usar os serviços do Azure para criar aplicativos nativos de nuvem.

Apache® e Apache Spark são marcas registradas ou marcas registradas do Apache Software Foundation no Estados Unidos e/ou em outros países. O uso desta marca não implica aprovação por parte da Apache Software Foundation.

Arquitetura

Diagrama que mostra o fluxo de dados do aplicativo nativo de nuvem entre o Azure Cosmos DB, Banco de Dados do Azure para PostgreSQL e Cache do Azure para Redis.

Baixe um Arquivo Visio dessa arquitetura.

Fluxo de dados

  1. Serviço de Kubernetes do Azure (AKS) é usado para implantar e gerenciar aplicativos em contêineres. A orquestração usa CI/CD (integração e entrega contínua) e segurança e governança de nível empresarial.
  2. Banco de Dados do Azure para PostgreSQL fornece um banco de dados totalmente gerenciado como um serviço para PostgreSQL. Esse serviço oferece alta disponibilidade interna e o conjunto de recursos avançados do Postgres.
  3. Cache do Azure para Redis descarrega a atividade do banco de dados gerenciando o estado da sessão e o cache de ativos.
  4. Eventos como funções de gatilho de atividade ou movimentação do usuário na plataforma de computação sem servidor Azure Functions. As funções geram alertas.
  5. Os Hubs de Notificação do Azure enviam notificações oportunas aos usuários em seu serviço ou meio preferido.
  6. Azure Synapse Analytics fornece insights sobre os dados. Os recursos do Apache Spark neste serviço de análise fornecem funcionalidade de processamento de Big Data e machine learning.
  7. O Application Insights monitora o desempenho do aplicativo para degradação ou anomalias. Esse recurso do Azure Monitor também dimensiona automaticamente aplicativos para atender aos requisitos de desempenho em alteração.
  8. O Azure Cosmos DB é usado para acompanhar a interação do usuário com aplicativos. Esse banco de dados NoSQL totalmente gerenciado é dimensionado conforme necessário para atender à demanda em mudança.
  9. A funcionalidade HTAP (processamento transacional e analítico) híbrido do Azure Synapse Link para Azure Cosmos DB integra dados do usuário ao processamento de análise. O resultado é uma visão quase em tempo real da interação usuário-aplicativo.
  10. As visualizações do Power BI exibem dados de transação preditivos, em tempo real e históricos.

Componentes

  • O AKS permite implantar rapidamente um cluster kubernetes pronto para produção no Azure.
  • Banco de Dados do Azure para PostgreSQL é um serviço de banco de dados relacional totalmente gerenciado com base na edição da comunidade do mecanismo de banco de dados PostgreSQL de software livre.
  • Cache do Azure para Redis é um agente de mensagens e cache de dados seguro que fornece acesso de alta taxa de transferência e baixa latência aos dados para aplicativos.
  • O Azure Cosmos DB é um serviço de banco de dados NoSQL totalmente gerenciado para criar e modernizar aplicativos escalonáveis e de alto desempenho.
  • Os Hubs de Notificação enviam notificações por push de qualquer back-end para qualquer dispositivo móvel.
  • O Functions é um serviço de computação sem servidor que permite executar código disparado por evento sem precisar provisionar ou gerenciar explicitamente a infraestrutura.
  • O Application Insights é um serviço extensível de gerenciamento de desempenho de aplicativos que é um recurso do Monitor. Você pode usar o Application Insights para monitorar aplicativos dinâmicos e melhorar continuamente o desempenho e a usabilidade.
  • Azure Synapse Analytics é um serviço de análise que reúne data warehouse corporativo e análise de Big Data dentro de uma experiência unificada.
  • O Power BI é um conjunto de ferramentas de negócios para autoatendimento e business intelligence empresarial. Aqui, ele é usado para analisar e visualizar dados.

Detalhes do cenário

Os aplicativos nativos de nuvem são uma parte fundamental de uma estratégia de transformação digital bem-sucedida. Esses aplicativos usam tecnologias como microsserviços, contêineres, serviços gerenciados e CI/CD. Como resultado, esses aplicativos oferecem vantagens sobre outros aplicativos, como agilidade, escalabilidade e tempo reduzido para o mercado.

Essa solução usa várias tecnologias nativas de nuvem:

  • Aplicativos em contêineres orquestrados pelo AKS
  • Uma experiência de CI/CD
  • A plataforma de computação sem servidor do Functions
  • Outros serviços de nuvem totalmente gerenciados:
    • Banco de Dados do Azure para PostgreSQL
    • Azure Cosmos DB
    • Cache do Azure para Redis

A solução também fornece análise quase em tempo real por meio de:

  • Power BI para visualizações de dados preditivos e históricos.
  • Azure Synapse Analytics, que usa o Apache Spark para processamento de Big Data e aprendizado de máquina.

Possíveis casos de uso

Como os aplicativos nativos de nuvem nesta solução usam serviços gerenciados do Azure, análise e aprendizado de máquina, eles respondem às necessidades do cliente. Esses aplicativos beneficiam muitos setores:

  • Comércio eletrônico
  • Streaming de conteúdo
  • Internet das coisas (IoT)
  • Governamental
  • Educação
  • Finance

Próximas etapas