Introduction (analyse des points douloureux)

En tant qu'architecte ou développeur d'une plateforme de commerce électronique, êtes-vous anxieux à l'idée de la grande vague de promotions qui a lieu chaque année ? Lorsque l'horloge sonne zéro, un grand nombre d'utilisateurs affluent instantanément, votre système est-il confronté aux graves problèmes suivants ?

  • -Impulsions de débit, pannes du système.Le trafic instantané est cent, voire mille fois supérieur à celui des jours de semaine, les pools de connexion aux bases de données sont épuisés et le CPU/IO des serveurs monte en flèche jusqu'à 1001 TP3T, ce qui entraîne directement des blocages de pages et des temps d'arrêt des services.
  • -La survente n'est pas compatible avec les données.En cas de forte concurrence, la logique traditionnelle de déduction de l'inventaire est très sujette aux problèmes de concurrence, ce qui a pour conséquence que l'inventaire devient négatif (survente), ce qui nuit gravement à la réputation de l'entreprise et à l'expérience de l'utilisateur.
  • -Blocage de la synchronisation et réponse lente.La demande de commande de l'utilisateur doit être synchronisée pour compléter la vérification de l'inventaire, la création de la commande, l'initialisation du paiement et d'autres opérations qui prennent du temps, n'importe lequel de ces blocages conduira les utilisateurs à attendre un délai, ce qui fera grimper le taux de désabonnement.

Si vous avez des difficultés avecComment faire face en douceur, de manière fiable et efficace, à des secondes massives de demandes simultanées ?En cas de problème, la solution asynchrone d'écrêtement des pointes de Tencent Cloud, basée sur la file d'attente de messages CKafka, vous fournira une meilleure pratique complète et évolutive.

Diagramme et aperçu de l'architecture de la solution

Le cœur de ce programme est“L'écrêtement des pointes en couches et le découplage asynchrone”.. Séparer la demande de commande instantanée de l'utilisateur du traitement commercial complexe dans le back-end, et lisser les impulsions de trafic en utilisant la file d'attente de messages CKafka comme un pool tampon puissant pour garantir la stabilité du système central.

Diagramme d'architecture.

Solution de Tencent Cloud CKafka Seconds System : écrêtement des pointes et remplissage des vallées asynchronisés, transportant facilement des milliards de flux de commandes - LikaCloud

Vue d'ensemble du flux de travail.

  1. Demande d'accès.Les demandes de pics des utilisateurs passent d'abord par la liaison d'accélération globale et sont distribuées par l'équilibrage de charge CLB à plusieurs serveurs commerciaux frontaux.
  2. Pré-étalonnage.Le serveur frontal (CVM/EKS) exécute une logique légère telle que l'éligibilité de l'utilisateur, la validation des paramètres et l'interrogation rapide des stocks via Redis. Une fois la validation effectuée, les informations relatives à la commande sont utilisées comme corps de messageÉcriture immédiate dans CKafkaEt répondre rapidement aux utilisateurs “dans la file d'attente”.
  3. Couper les sommets et remplir les vallées.Les clusters CKafka prennent en charge tout le trafic transitoire grâce à leur débit élevé et à leur persistance, ce qui permet un écrêtage parfait du trafic.
  4. Consommation asynchrone.La fonction en nuage SCF ou le microservice élastique TEM en aval agit comme un consommateur, tirant les messages de CKafka à un rythme contrôlé et exécutant en douceur les opérations de cohérence finales telles que la déduction de l'inventaire et l'abandon de la commande.
  5. Persistance des données.Après traitement, les résultats sont écrits dans la base de données en nuage (MySQL/CynosDB) et l'état du cache dans Redis est mis à jour.

Produits et composants de base

assemblagesjouer un rôlePrincipales recommandations en matière de configuration/sélectionPourquoi le choisir ?
Files d'attente de messages CKafkatampon du noyau du systèmequi joue un rôle clé dans l'écrêtement des pointes et le découplage.Choix proposésspécifications de haut niveauLe nombre de partitions doit être supérieur au nombre de consommateurs afin d'améliorer la consommation simultanée.Avec un débit et une évolutivité extrêmement élevés, compatible avec l'écosystème Kafka, intégration transparente de divers types d'outils big data, services gérés sans maintenance.
Serveur cloud CVM / Elastic Container Service EKSTraitement de la logique commerciale frontalequi est responsable de la validation des demandes, de la génération des jetons et de la production des messages.adoptionfacturation volumétriqueet jumelé avecGroupe d'étirement élastique (AS)Il augmente ou diminue automatiquement en fonction de la pression exercée par l'unité centrale.Il fournit une puissance de calcul stable et fiable, et la mise à l'échelle élastique garantit que les ressources sont automatiquement ajustées avant et après le pic, ce qui permet de réaliser d'importantes économies.
Base de données en nuage RedisCache de données chaudesLes services d'aide à l'enfance et à la famille, le stockage de l'inventaire des secondes, les listes noires d'utilisateurs, les limites de fréquence, etc.optionà base de mémoireles spécifications.Activation de la persistanceUtiliser des scripts Lua pour assurer la déduction atomique de l'inventaire.Le fonctionnement de la mémoire à un seul fil avec des performances très élevées (10W+ QPS) est un outil formidable pour traiter des lectures et des écritures hautement simultanées.
Fonction de l'informatique en nuage SCFconsommateur de tâches asynchronesLe système de gestion des messages de CKafka permet d'extraire des messages de CKafka et de gérer la logique d'ordonnancement de base.raisonnableexécutions simultanéesetNombre de messages traités par lotpour éviter de surcharger la base de données en aval.axé sur les événementsGrâce à l'architecture sans serveur, le système s'adapte automatiquement au volume de messages accumulés, ce qui permet un véritable paiement à l'utilisation et une absence de maintenance.
Base de données en nuage TencentDB pour MySQL/TDSQL-CStockage final des donnéesLe stockage permanent des commandes, des produits et d'autres informations.adoptionÉdition haute disponibilitéà tel point queÉdition Entreprise à trois nœudsqui garantit la cohérence des données ; il est recommandé d'utiliserséparation lecture-écritureArchitecture.Fournissant des services de base de données hautement disponibles et performants, TDSQL-C (CynosDB) est particulièrement adapté aux scénarios d'écriture massive et simultanée, avec un excellent rapport prix/performance.
Équilibrage de la charge CLBpoint d'entrée unique pour le traficpermettant la distribution du trafic et la haute disponibilité.optionVersion haute performanceIl permet d'établir un grand nombre de connexions simultanées.Éliminez les points de défaillance uniques et assurez une haute disponibilité au niveau de la couche d'accès.
Web Application Firewall WAFagent de sécuritéLe système d'information de la Commission européenne (CEI) est un outil d'aide à la décision qui permet de se prémunir contre les attaques de type CC, les manipulations malveillantes et autres comportements.configurerProtection CC préciserègles etvérification homme-ordinateurdes politiques, chargées en amont de filtrer le trafic malveillant.Intercepte la grande majorité des attaques avant que le trafic n'entre dans le système de l'entreprise, préservant ainsi l'équité de la campagne et la sécurité de l'entreprise.

Résumé des avantages du programme

  • ⚡ L'expérience ultime de l'utilisateur.Réponse rapide aux demandes des utilisateurs (en millisecondes), pas besoin d'attendre longtemps, pas de décalage dans le système et un processus de commande fluide.
  • ? ️ Haute disponibilité et stabilité du système.Le système dorsal est découplé des pics de trafic, la base de données et la pression de service sont toujours fluides, ce qui permet d'éviter complètement les temps d'arrêt dus à une surcharge.
  • ? Une mise à l'échelle flexible pour une optimisation des coûts.Tous les composants sont évolutifs, ce qui élimine la nécessité d'acheter de grandes quantités de ressources inutilisées pour les pics de trafic et réduit considérablement les coûts d'exploitation et de maintenance.
  • ? Cohérence finale des données.Grâce à la mise en file d'attente des messages et à une logique de consommation fiable, il garantit la cohérence des données pour la déduction des stocks et la génération des commandes en cas de forte concurrence, éliminant ainsi les surventes.
  • ? ️ Architecture découplée, flexible et évolutive.Les responsabilités de chaque module sont claires, et l'extension future de nouvelles fonctions (telles que la déduction de points, la notification par SMS) ne nécessite que l'ajout de nouveaux consommateurs, sans modifier le processus général.

Scénarios d'application et clients concernés

  • Scène typique.Les plateformes de commerce électronique 618, double 11, double 12 et autres activités promotionnelles de grande envergure ; le lancement de nouveaux produits ; les lieux les plus populaires du système de billetterie pour acheter des billets.
  • Clients concernés.
    • Toutes les entreprises Internet confrontées à des inondations cycliques ou prévisibles du trafic.
    • Un chiffre d'affaires quotidien moyen de plus d'un million, une croissance rapide de l'activité, la nécessité d'une architecture très souple de la plate-forme de commerce électronique.
    • Équipe technique cherchant à migrer d'un système spike auto-construit et difficile à maintenir vers une architecture cloud-native entièrement hébergée et très fiable.

Liens connexes

Tencent Cloud Message Queue CKafka 100% Compatible avec les versions 0.9.0 à 3.2.0 d'Apache Kafka
CVM Beechcraft Exemple Réduction maximale du coût arithmétique de plus de 45%
Base de données en nuage Redis Compatible avec les protocoles Redis et Memcached
Tencent Cloud Cloud Function SCF Environnement d'exploitation sans serveur
Tencent Cloud Load Balancing CLB Fournir des services sécurisés et rapides de distribution du trafic des couches 4 et 7
MySQL natif dans le nuage (TDSQL-C) 100% Compatible avec MySQL
T-Sec Web Application Firewall Identification des attaques Web basée sur des règles AI+
Expérience gratuite des produits Tencent Cloud Essai gratuit de plus de 60 produits en nuage