Introduction (analyse des points douloureux)

En tant qu'architecte ou développeur d'une plateforme de commerce électronique, n'avez-vous jamais été angoissé par le scénario de la seconde mort lors de la préparation de grandes promotions telles que “618” et “Double 11” ? Lorsqu'un grand nombre d'utilisateurs arrivent en même temps et cliquent frénétiquement sur “Acheter maintenant”, votre système est mis à rude épreuve :

  • Les stocks sont survendus.Des conflits simultanés de lecture/écriture de la base de données ont entraîné la génération de commandes avec succès alors que le stock réel était épuisé, ce qui a entraîné une perte de capital et des plaintes de la part des clients.
  • Goulets d'étranglement de la base de données.Les requêtes se déversent dans la base de données centrale comme un tsunami, faisant exploser le nombre de CPU et de connexions, augmentant la latence des réponses et déclenchant même une avalanche qui paralyse le système tout entier.
  • Mauvaise expérience utilisateur.La page se charge lentement, les boutons ne répondent pas, l'utilisateur ne voit que le message “le système est occupé” et finit par partir déçu.

Résumé en une phrase.Si vous êtes aux prises avec des problèmes de survente d'inventaire, de goulots d'étranglement dans la base de données et de stabilité du système dans des scénarios de pointe à forte concurrence, cet article vous fournira une solution complète et performante basée sur Tencent Cloud TDSQL-C.

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

La figure ci-dessous montre clairement l'architecture de la solution Tencent Cloud TDSQL-C basée sur les pics.

Comment Tencent Cloud TDSQL-C (PostgreSQL Edition) résout la difficulté de la déduction de l'inventaire en secondes dans un contexte de forte concurrence ? - LikaCloud

Description du diagramme d'architecture : les demandes des utilisateurs sont chargées par les ressources statiques accélérées du Tencent Cloud CDN, puis distribuées par le CLB d'équilibrage de charge. La couche d'application commerciale est déployée sur le CVM et accède à Tencent Cloud Redis en tant que cache de données hotspot. Plus important encore, l'opération de transaction centrale de déduction d'inventaire est directement réalisée par la base de données TDSQL-C (version PostgreSQL) hautement performante et compatible, ce qui garantit une cohérence absolue des données et des performances élevées.

Vue d'ensemble du flux de travail.

  1. Accès et distribution du trafic.Les requêtes des utilisateurs sont d'abord accélérées par le CDN de Tencent Cloud pour le chargement des pages statiques, puis distribuées de manière homogène aux clusters de serveurs d'entreprise back-end grâce à l'équilibrage de charge (CLB).
  2. Séparation en lecture/écriture.Lorsque le serveur d'entreprise lit des données non essentielles telles que des informations sur les produits, il donne la priorité à l'accès au cache Redis du nuage de Tencent, ce qui réduit considérablement la pression exercée sur la base de données. Pour la transaction principale de déduction d'inventaire, l'application se connecte directement à l'instance principale de TDSQL-C.
  3. Déduction de base.TDSQL-C utilise les puissantes capacités de traitement des transactions de PostgreSQL et les verrous au niveau des lignes pour effectuer le processus “Demander l'inventaire -> Déterminer s'il est supérieur à 0 -> Déduire l'inventaire” au niveau de la base de données avec des opérations atomiques, ce qui permet d'éliminer fondamentalement la survente.
  4. Résultats obtenus.Après une déduction réussie, le cache est mis à jour et le résultat est renvoyé à l'utilisateur. L'instance en lecture seule est chargée d'accepter les demandes de lecture, telles que les requêtes de commande, afin de réduire encore la pression sur la base de données principale.

Proposition de valeur.La solution passe par l'architecture “Redis cache hot data + TDSQL-C pour protéger le cœur de la transaction”, non seulement pour tirer parti de la haute performance du cache, mais aussi pour garantir que la base de données dans la très haute concurrence de la capacité de cohérence des données, une solution parfaite pour le cœur de la deuxième tuer les points de douleur.

Produits et composants de base

composante essentiellejouer un rôlePrincipales recommandations en matière de configuration/sélectionPourquoi le choisir ?
Tencent Cloud TDSQL-C (édition PostgreSQL)Couche de données de base pour des transactions à forte cohérence pour les déductions d'inventaire.est la clé pour résoudre le problème de la survente.Il est recommandé de choisir la version Serverless, qui augmente et réduit automatiquement la capacité en fonction de l'utilisation réelle des ressources informatiques, et peut facilement faire face aux pics ; le stockage est facturé en fonction du volume réel de données, et le coût est optimal.Des performances extrêmes.Architecture de séparation du calcul et du stockage, les performances E/S sont 2 à 3 fois supérieures à celles des disques SSD locaux, garantissant une réponse à la milliseconde.
100% est compatible avec PostgreSQL.Migration en douceur sans modification du code de l'entreprise.
Haute disponibilité extrême.Redondance des données multi-copies, basculement automatique, disponibilité du service jusqu'à 99,99%.
Tencent Cloud RedisCouche de cache pour mettre en cache les pages détaillées des produits chauds, l'état des pics, etc.Prend la part du lion des demandes de lecture et protège la base de données dorsale.Sélectionner les spécifications du type de mémoire pour garantir les vitesses de lecture et d'écriture ; fixer des délais d'expiration raisonnables ; avant le début de la deuxième session de l'Assemblée générale des Nations unies.Échauffement de la mémoire cacheTrès haut débit.Prend en charge des centaines de milliers de QPS, ce qui réduit considérablement la charge de la base de données.
Enrichissement des structures de données.La liste de support, l'ensemble, etc., peuvent être réalisés en quelques secondes dans la file d'attente et dans d'autres logiques complexes.
Persistance des données.Éviter la perte de données due au redémarrage du cache.
Tencent Cloud Load Balancing (CLB)Portail de trafic qui répartit uniformément les demandes massives des utilisateurs entre plusieurs serveurs d'entreprise.Configurez-le pour l'écoute de la couche 4 (TCP) ou de la couche 7 (HTTP/HTTPS) et activez le contrôle de santé pour rejeter automatiquement les serveurs dorsaux anormaux.Concurrence ultra-élevée.Une seule grappe peut prendre en charge des centaines de millions de connexions, ce qui permet de faire face facilement aux pics de trafic.
Très disponible.Le déploiement en grappe élimine les points de défaillance uniques.
Expansion et contraction souples.Il peut être réglé automatiquement en fonction du débit.
Serveurs en nuage (CVM)/Elastic Scaling (AS)Le serveur d'application qui exécute la logique commerciale.Utilisez des groupes de mise à l'échelle élastiques pour réduire les coûts en augmentant automatiquement le nombre de serveurs pendant le pic et en le réduisant après le pic sur la base de mesures telles que l'utilisation de l'unité centrale ou le nombre de connexions simultanées.Configuration flexible.Une large gamme de spécifications de calcul est disponible en fonction des besoins.
Intégration transparente avec le CLB.Les CVM d'un groupe de mise à l'échelle s'enregistrent et se désenregistrent automatiquement auprès de la CLB.

Résumé des avantages du programme

  • ⛓️ Mettre fin à la survente.Grâce aux solides caractéristiques transactionnelles de TDSQL-C, il est possible de réaliser des déductions d'inventaire précises et d'éviter les pertes de capital et les plaintes des clients causées par des ventes excessives dès le départ.
  • ⚡ Performance extrême.Les performances extrêmes de TDSQL-C en matière d'E/S et le cache Redis garantissent la stabilité et la fluidité du système pendant la période de pointe, ainsi qu'une expérience fluide pour les utilisateurs qui passent des commandes.
  • 📈 Haute disponibilité résiliente.Conception de la haute disponibilité des liaisons complètes (CLB, groupe de mise à l'échelle CVM, multi-copie TDSQL-C), aucun point de défaillance unique dans le système, et possibilité de mise à l'échelle automatique en fonction du flux de trafic avec un coût contrôlable.
  • 🛡️ Migration en douceur.TDSQL-C 100% est compatible avec PostgreSQL, et les services existants sont accessibles avec une modification quasi nulle, ce qui réduit considérablement le seuil technique et le risque de migration.

Scénarios d'application et clients concernés

  • Scène centrale.Scénarios instantanés à forte concurrence tels que les secondes, le rush, les offres spéciales à durée limitée, les tirages au sort, etc. sur les plates-formes de commerce électronique.
  • Caractéristiques des clients concernés.
    • L'entreprise connaît des pics de trafic périodiques ou soudains, et il existe une forte demande d'élasticité du système pour augmenter ou réduire la capacité.
    • Les exigences en matière de cohérence des données sont si élevées que les vulnérabilités commerciales telles que la survente des stocks sont inacceptables.
    • Nous utilisons actuellement une base de données PostgreSQL et nous recherchons une solution de base de données en nuage plus robuste et sans problème.

Liens connexes

Tencent Cloud TDSQL-C 100% Compatible avec MySQL et PostgreSQL
Faites l'expérience de TDSQL-C gratuitement Bénéficiez de 6,5 % de réduction sur le renouvellement après la période d'essai, d'un débit élevé avec des millions de QPS.
Migrer vers le Cloud PostgreSQL Migration de TDSQL-C PostgreSQL Edition vers Cloud Database PostgreSQL
Tencent Cloud Redis Compatible avec les protocoles Redis et Memcached
CVM Beechcraft 1 mois à 5 ans Configuration de la durée pour répondre aux besoins de différents scénarios, jusqu'à 50 % de réduction !