Modifier

Front-end d’e-commerce

Microsoft Entra External ID
Azure Content Delivery Network
Azure AI services
Azure Traffic Manager
Azure App Service

Cet exemple de scénario vous guide tout au long d’une implémentation d’un serveur frontal e-commerce à l’aide des outils PaaS Azure.

Architecture

Diagramme montrant un exemple d’architecture de scénario pour une application de e-commerce.

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

Dataflow

Ce scénario couvre l’achat de tickets à partir d’un site de e-commerce, les données transitent par le scénario comme suit :

  1. Azure Traffic Manager achemine la demande d’un utilisateur vers le site de e-commerce hébergé dans Azure App Service.
  2. Azure CDN sert des images statiques et le contenu à l’utilisateur.
  3. L’utilisateur se connecte à l’application via un client Azure Active Directory B2C.
  4. L’utilisateur recherche des concerts à l’aide d’Azure Search.
  5. Le site web extrait les détails du concert à partir d’Azure SQL Database.
  6. Le site web fait référence aux images de tickets achetés dans le stockage Blob.
  7. Les résultats de requête de la base de données sont mis en cache dans Azure Cache pour Redis pour améliorer les performances.
  8. L’utilisateur envoie des commandes de billets et des avis sur des concerts, qui sont placés dans la file d’attente.
  9. Azure Functions traite le paiement de la commande et les revues de concert.
  10. La solution Cognitives Services fournit une analyse de la revue du concert afin de déterminer le sentiment (positif ou négatif).
  11. Application Insights fournit des métriques de performances pour surveiller l’intégrité de l’application web.

Components

  • Azure CDN fournit le contenu statique, mis en cache à partir d’emplacements proches des utilisateurs pour réduire la latence.
  • Azure Traffic Manager contrôle la distribution du trafic utilisateur pour les points de terminaison de service dans différentes régions Azure.
  • App Services - Web Apps héberge des applications web permettant une mise à l’échelle automatique et une haute disponibilité sans avoir à gérer l’infrastructure.
  • Azure Active Directory B2C est un service de gestion des identités qui vous permet de personnaliser et de contrôler la façon dont les clients s’inscrivent, se connectent et gèrent leurs profils dans une application.
  • Files d’attente de stockage stocke un grand nombre de messages de file d’attente accessibles par une application.
  • Functions constitue les options de calcul sans serveur qui permettent aux applications d’être exécutées à la demande sans avoir à gérer l’infrastructure.
  • Cognitive Services – Analyse des sentiments utilise des API de Machine Learning et permet aux développeurs d’ajouter facilement des fonctionnalités intelligentes dans des applications, comme la reconnaissance des émotions et la détection vidéo, la reconnaissance faciale, vocale et visuelle ainsi que la compréhension de la parole et du langage.
  • Recherche Azure est une solution cloud de recherche en tant que service, qui offre une expérience de recherche riche concernant du contenu privé et hétérogène dans les applications web, mobiles et d’entreprise.
  • Les blobs de stockage Blob sont optimisés pour stocker de grandes quantités de données non structurées, telles que des données texte ou binaires.
  • Azure Cache pour Redis améliore les performances et la scalabilité des systèmes qui dépendent fortement de magasins de données principaux en copiant temporairement des données fréquemment utilisées dans un stockage rapide situé près de l’application.
  • Azure SQL Database est un service géré de base de données relationnelle à usage général qui prend en charge des structures telles que les données relationnelles, JSON, les données spatiales et XML.
  • Application Insights est conçu pour vous aider à améliorer en permanence les performances et la convivialité en détectant automatiquement les anomalies de performances via des outils d’analytique intégrés pour aider à comprendre ce que font les utilisateurs avec une application.

Autres solutions

Bien d’autres technologies sont disponibles pour créer une application visible par le client consacrée au e-commerce à grande échelle. Ces technologies couvrent le front-end de l’application, ainsi que la couche Données.

Les autres options pour la couche Web et les fonctions incluent :

  • Azure Kubernetes Service : plateforme pour la création et le déploiement de solutions basées sur des conteneurs, utilisables comme une implémentation d’une architecture de microservices. La plateforme fournit l’agilité des différents composants de l’application, pour une mise à l’échelle indépendante, à la demande.
  • Azure Container Instances : méthode rapide pour déployer et exécuter des conteneurs avec un cycle de vie court. Les conteneurs sont alors déployés pour exécuter une tâche de traitement rapide, par exemple d’un message ou d’un calcul, puis ils sont déprovisionnés une fois l’opération terminée.
  • Vous pouvez utiliser Service Bus à la place d’une file d’attente de stockage.

D’autres options pour la couche Données incluent :

  • Azure Cosmos DB : service de base de données multimodèle mondialement distribué de Microsoft. Cette plateforme permet d’exécuter d’autres modèles de données comme des données MongoDB, Cassandra ou Graph, ou un stockage Table simple.

Détails du scénario

De nombreux sites Web de e-commerce sont confrontés à des variations de la saisonnalité et du trafic au fil du temps. Quand la demande en produits et services augmente, de façon prévisible ou non, l’utilisation des outils PaaS vous permet de gérer davantage de clients et de transactions automatiquement. De plus, ce scénario tire parti de l’approche économique du cloud en payant uniquement la capacité que vous utilisez.

Ce document vous aide à découvrir les différents composants PaaS Azure et les considérations utilisées pour mettre ensemble et pour déployer un exemple d’application de e-commerce, Relecloud Concerts, une plateforme de création de tickets de concert en ligne.

Cas d’usage potentiels

Cette solution est optimisée pour le secteur de la vente au détail. Les autres cas d’usage appropriés sont les suivants :

  • La création d’une application nécessitant une mise à l’échelle élastique pour gérer les pics d’utilisateurs à des moments différents.
  • La création d’une application conçue pour fonctionner avec une haute disponibilité dans différentes régions Azure du monde entier.

Considérations

Ces considérations implémentent les piliers d’Azure Well-Architected Framework qui est un ensemble de principes directeurs qui permettent d’améliorer la qualité d’une charge de travail. Pour plus d’informations, consultez Microsoft Azure Well-Architected Framework.

Disponibilité

Extensibilité

Sécurité

La sécurité fournit des garanties contre les attaques délibérées, et contre l’utilisation abusive de vos données et systèmes importants. Pour plus d’informations, consultez Vue d’ensemble du pilier Sécurité.

Résilience

Optimisation des coûts

L’optimisation des coûts consiste à examiner les moyens de réduire les dépenses inutiles et d’améliorer l’efficacité opérationnelle. Pour plus d’informations, consultez Vue d’ensemble du pilier d’optimisation des coûts.

Explorez le coût d’exécution de ce scénario, tous les services sont préconfigurés dans le calculateur de coûts. Pour pouvoir observer l’évolution de la tarification pour votre cas d’usage particulier, modifiez les variables appropriées en fonction du trafic que vous escomptez.

Nous proposons trois exemples de profils de coût basés sur la quantité de trafic que vous escomptez :

  • Petit : cet exemple de tarifs correspond aux composants qui sont nécessaires à la génération d’une sortie pour une instance d’un niveau de production minimal. Nous supposons ici la présence d’un petit nombre d’utilisateurs, de l’ordre de quelques milliers par mois. L’application utilise une seule instance d’une application web standard, suffisante pour permettre une mise à l’échelle automatique. Les autres composants sont mis à l’échelle à un niveau de base qui, pour un coût minimal, assure le respect du contrat de niveau de service et une capacité suffisante pour gérer une charge de travail de production.
  • Moyenne : cet exemple de tarifs correspond aux composants représentatifs d’un déploiement de taille moyenne. Ici, nous estimons environ 100 000 utilisateurs du système au cours d’un mois. Le trafic attendu est géré dans une instance de service d’application unique avec un niveau standard modéré. En outre, des niveaux modérés des services Cognitive et de recherche sont ajoutés à la calculatrice.
  • Grand : une application destinée à un déploiement à grande échelle, de l’ordre de plusieurs millions d’utilisateurs par mois et de plusieurs téraoctets de données. À ce niveau de performances d’utilisation élevées, un niveau Premium est requis pour les applications web déployées dans plusieurs régions exposées par Traffic Manager. Les données incluent : le stockage, les bases de données et un réseau de distribution de contenu, qui sont configurés pour plusieurs téraoctets de données.

Déployer ce scénario

Pour déployer ce scénario, vous pouvez suivre ce didacticiel pas à pas montrant comment déployer manuellement chaque composant. Ce didacticiel fournit également un exemple d’application .NET qui exécute une simple application d’achat de tickets. Il existe un autre modèle Resource Manager permettant d’automatiser le déploiement de la plupart des ressources Azure.

Contributeurs

Cet article est géré par Microsoft. Il a été écrit à l’origine par les contributeurs suivants.

Auteur principal :

  • Chris Mason | Manager senior, génie logiciel

Étapes suivantes