Ideias de soluções
Esse artigo é uma ideia de solução. Caso deseje que ampliemos o conteúdo com mais informações, como possíveis casos de uso, serviços alternativos, considerações sobre implementação ou diretrizes de preços, fale conosco enviando seus comentários no GitHub.
Você pode usar o Azure Functions e o Azure Cosmos DB para criar aplicativos sem servidor escalonáveis e distribuídos globalmente.
Arquitetura
Baixe um Arquivo Visio dessa arquitetura.
Fluxo de dados
Um cliente faz um pedido em um site de comércio eletrônico.
A ordem aciona 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 assinam eventos de feed de alteração são notificados.
As notificações de feed de alterações acionam Funções:
- Uma função aplica impostos ao pedido.
- 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 de maneira elástica a taxa de transferência e o armazenamento em qualquer quantidade de regiões geográficas.
Detalhes do cenário
Os microsserviços oferecem muitos benefícios:
- Eles fornecem soluções altamente escaláveis.
- É possível implantar cada serviço de maneira independente.
- 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 lançamento no mercado, acelerando o ciclo de vida de desenvolvimento de software.
Uma maneira eficiente de implementar microsserviços é usar uma tecnologia sem servidor. Essa solução usa 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.
Possíveis casos de uso
Essa solução se aplica a muitas áreas:
- Comércio eletrônico
- Retail
- Gerenciamento de estoque
Próximas etapas
- Introdução ao Azure Functions
- Bem-vindo(a) ao Azure Cosmos DB
- Feed de alterações no Azure Cosmos DB
- Criar uma função disparada pelo Azure Cosmos DB
- Conectar o Azure Functions ao Azure Cosmos DB usando o Visual Studio Code
Recursos relacionados
Consulte as seguintes arquiteturas que incluem o Functions e o Azure Cosmos DB:
- Azure Cosmos DB em cargas de trabalho de IoT
- Padrão de caixa de saída transacional com o Azure Cosmos DB
- Jogos com o Azure Cosmos DB
- Passo a passo do código: aplicativo sem servidor com o Functions
- Analisar news feeds com a análise quase em tempo real usando o processamento de imagem e linguagem natural
Consulte as seguintes arquiteturas que apresentam funções:
- Integrar Hubs de Eventos com funções sem servidor no Azure
- Azure Functions em um ambiente híbrido
- Monitorar Azure Functions e Hubs de Eventos
- Serviço de Aplicativo do Azure e Azure Functions para multilocatário
- Desempenho e escala para Hubs de Eventos do Azure e Azure Functions
Consulte as seguintes arquiteturas que apresentam o Azure Cosmos DB: