Editar

Aplicativos sem servidor usando o Azure Cosmos DB

Azure Cosmos DB
Azure Functions

Ideias de soluções

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

Você pode usar o Azure Functions e o Azure Cosmos DB para criar aplicativos sem servidor globalmente distribuídos e escaláveis.

Arquitetura

Architecture diagram that shows the functions that are triggered by an online order and a database change feed.

Transfira um ficheiro do Visio desta arquitetura.

Fluxo de dados

  • Um cliente faz um pedido em um site de comércio eletrônico.

  • A ordem dispara uma instância de Functions. A função processa o checkout do cliente e armazena informações sobre o pedido no Azure Cosmos DB.

  • A operação de inserção do banco de dados dispara um evento de feed de alteração do Azure Cosmos DB.

  • Os sistemas que se inscrevem para alterar eventos de feed são notificados.

  • As notificações de feed de alterações acionam Funções:

    • Uma função aplica impostos à ordem.
    • Uma função processa o pagamento do pedido.
    • Uma função cumpre a ordem.

Componentes

  • O Functions é uma plataforma de computação sem servidor orientada a eventos. Com o Functions, você pode usar gatilhos e associações para integrar serviços em escala.
  • O Azure Cosmos DB é um banco de dados multimodelo distribuído globalmente. Com o Azure Cosmos DB, suas soluções podem dimensionar elasticamente a taxa de transferência e o armazenamento em qualquer número de regiões geográficas.

Detalhes do cenário

Os microsserviços oferecem muitos benefícios:

  • Eles fornecem soluções altamente escaláveis.
  • Você pode implantar cada serviço independentemente.
  • O isolamento de falhas é simples quando você limita a funcionalidade a contêineres separados.
  • Eles se encaixam bem em um ambiente de DevOps.
  • Eles diminuem o tempo de entrada no mercado, acelerando o ciclo de vida de desenvolvimento de software.

Uma maneira eficiente de implementar microsserviços é usar uma tecnologia sem servidor. Esta solução utiliza o Functions, uma oferta do Azure que fornece uma experiência de computação sem servidor. A solução usa o Azure Cosmos DB para armazenamento de dados. O Azure Cosmos DB oferece um feed de alterações que se integra ao Functions.

Potenciais casos de utilização

Esta solução aplica-se a muitas áreas:

  • Comércio eletrónico
  • Retail
  • Gestão de inventário

Próximos passos

Consulte as seguintes arquiteturas que incluem o Functions e o Azure Cosmos DB:

Consulte as seguintes arquiteturas que apresentam Funções:

Consulte as seguintes arquiteturas que apresentam o Azure Cosmos DB: