Édition

Applications serverless avec Azure Cosmos DB

Azure Cosmos DB
Azure Functions

Idées de solution

Cet article présente une idée de solution. Si vous souhaitez nous voir développer le contenu avec d’autres informations, telles que des cas d’usage potentiels, d’autres services, des considérations d’implémentation ou un guide des prix, faites-le-nous savoir avec les Commentaires de GitHub.

Vous pouvez utiliser Azure Functions et Azure Cosmos DB pour créer des applications serverless évolutives et distribuées à l’échelle mondiale.

Architecture

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

Téléchargez un fichier Visio de cette architecture.

Dataflow

  • Un client passe commande sur un site web d’e-commerce.

  • La commande déclenche une instance de Functions. La fonction traite la commande du client et stocke les informations correspondantes dans Azure Cosmos DB.

  • L'opération d'insertion de base de données déclenche un événement de flux de modifications Azure Cosmos DB.

  • Les systèmes qui s’abonnent aux événements de flux de modification sont avertis.

  • Les notifications de flux de modification déclenchent des fonctions :

    • Une fonction applique des taxes à la commande.
    • Une fonction traite le paiement de la commande.
    • Une fonction exécute la commande.

Composants

  • Functions est une plateforme de calcul serverless pilotée par les événements. Avec Functions, vous pouvez utiliser des déclencheurs et des liaisons pour intégrer les services à grande échelle.
  • Azure Cosmos DB est une base de données multimodèle distribuée à l’échelle mondiale. Azure Cosmos DB permet à vos solutions de faire évoluer en toute flexibilité le débit et le stockage dans un nombre illimité de régions géographiques.

Détails du scénario

Les microservices offrent de nombreux avantages :

  • Ils fournissent des solutions hautement évolutives.
  • Vous pouvez déployer chaque service indépendamment.
  • L’isolation des erreurs est simple lorsque vous limitez les fonctionnalités à des conteneurs distincts.
  • Ils s’intègrent bien dans un environnement DevOps.
  • Ils réduisent le délai de commercialisation en accélérant le cycle de vie du développement de logiciels.

Un moyen efficace d’implémenter des microservices consiste à utiliser une technologie serverless. Cette solution utilise Functions, une offre Azure qui fournit une expérience de calcul serverless. La solution utilise Azure Cosmos DB pour le stockage de données. Azure Cosmos DB offre un flux de modification qui s’intègre à Functions.

Cas d’usage potentiels

Cette solution s’applique à de nombreux domaines :

  • E-commerce
  • Retail
  • Gestion des stocks

Étapes suivantes

Consultez les architectures suivantes qui incluent Functions et Azure Cosmos DB :

Consultez les architectures suivantes qui présentent Functions :

Consultez les architectures suivantes qui présentent Azure Cosmos DB :