Úvod (analýza problému)

S tím, jak vrchol provozu během velké akce narostl z desetitisíců na statisíce a dokonce miliony, čelí váš objednávkový systém následujícím vážným výzvám?

  • Databáze je přetížená.Tradiční relační databáze (jako například MySQL) dosahují rychle své hranice při velkém počtu současných zápisů objednávek, což vede k prodlevám v odezvě a nakonec k selhání systému, což má přímý dopad na objem transakcí.
  • Problém s příliš velkým prodejem zásob.V případě vysoké paralelnosti mohou být transakční zámky databáze nebo zámky aplikační vrstvy snadno narušeny, což může vést k “přeprodeji” zásob a vážně poškodit důvěryhodnost platformy a vyvolat stížnosti zákazníků.
  • Stabilita systému je nízká.Nejmenší selhání jedné služby nebo databázového uzlu může vyvolat “lavinový efekt” v celém řetězci aplikací, což povede k nedostupnosti služby pro celou webovou stránku a k výraznému zhoršení uživatelské zkušenosti.

Pokud vás trápí zpomalení systému způsobené vysokým počtem souběžných objednávek, riziko přeprodeje a vysoké náklady na provoz a údržbu, tento článek vám poskytne kompletní řešení založené na klíčových produktech Tencent Cloud, které bylo prověřeno v praxi.

Schéma a přehled architektury řešení

Toto řešení využívá“Omezení přístupové vrstvy -> zachycení v mezipaměti -> uložení do databáze”Díky koncepci vrstveného omezení špiček a využití několika klíčových produktů Tencent Cloud bylo možné vytvořit stabilní, efektivní a flexibilní systém pro zadávání objednávek s vysokým provozním zatížením.

Archičtvrť

Bezproblémové zpracování objednávek v hodnotě miliardy yuanů během Double 11: TDSQL-C od Tencent Cloud a řešení distribuovaného ukládání do mezipaměti Redis – LikaCloud

Přehled pracovního postupu::

  1. 1. Požadavek uživatele nejprve projdeAPI gateway Tencent CloudProvedení autentizace a přesné omezení přístupu umožní zablokovat neplatné a nadbytečné požadavky mimo systém.
  2. 2. Požadavek, který prošel kontrolou, vstupuje do vrstvy obchodní logiky, kde hlavní operací je volání funkce.Tencent Cloud RedisAtomové příkazy zabezpečí automatické snížení zásob, vyřeší problém s přehnaným prodejem a zvládnou většinu tlaku souvisejícího s paralelním zpracováním.
  3. 3. Po úspěšném provedení rezervace zásob jsou údaje o objednávce asynchronně zapsány do fronty zpráv a nakonec jsou hladce zapsány do spotřebitelské služby.Tencent Cloud TDSQL-CProveďte konečnou trvalou archivaci, abyste zabránili zatěžování databáze.

Základní produkty a komponenty

základní složkahrát roliKlíčová doporučení pro konfiguraci/výběrProč si ji vybrat
API gateway Tencent CloudHlavní vstupní bod a obranná linie protokolu TCP/IP.Odpovídá za autentizaci a autorizaci požadavků, kontrolu provozu, ukládání do mezipaměti a zásady failover, které chrání zadní koncový podnikový cluster před přetížením.Proti /createOrderKonfigurace základních rozhraníOmezení provozu QPS.; ZapnoutOdezva na cachováníAby bylo možné reagovat na opakované požadavky, jako jsou například dotazy na informace o produktech.K dosažení pokročilé správy provozu není nutné provádět kódování. Poskytuje vysokou dostupnost a vysokou flexibilitu služeb na vstupní úrovni, což je první záruka stability systému.
Tencent Cloud RedisVysoce výkonná cache a kontrolní centrum zásobZodpovídá za ukládání do mezipaměti dat o nejnovějších trendech (informace o produktech) a jejich poskytování prostřednictvím DECRAž atomové příkazy provedou srážku z inventáře, problém s přehnaným prodejem bude definitivně vyřešen.VýběrTyp pamětiSpecifikace jsou navrženy tak, aby zajistily maximální výkonnost; doporučuje se je zapnout.PersistenceFunkce k zabránění ztrátě dat; použitíCluster Redis​ Rozšiřte kapacitu a výkonnost pomocí vzorce.Nabízí stabilitu a výkonnost daleko přesahující samostatně nasazený Redis, disponuje automatickým přepínáním v případě selhání a možností online škálování, což je klíčové pro zvládnutí náhlé vysoké intenzity čtení a zápisu.
Tencent Cloud TDSQL-C (verze PostgreSQL)Engin pro trvalé ukládání dat s vysokou dostupností.Je odpovědný za konečné bezpečné a spolehlivé ukládání všech údajů o objednávkách a je “jediným zdrojem pravdy” pro transakce.PoužitíBezserverovýModel nebo výpočetní uzly se elasticky škálují, aby se vyrovnaly s výkyvy provozu;Příklad pouze pro čtení.Zabezpečit dotazy na výkazy a snížit zátěž hlavní databáze.Architektura nativní pro cloud ji činí extrémně flexibilní a škálovatelnou s vysokým poměrem ceny a výkonu, vynikajícím výkonem zápisu a plnou kompatibilitou s PostgreSQL, což zajišťuje vysokou konzistenci a spolehlivost dat.

Shrnutí přínosů programu

  • ⚡ Zpracování s velmi vysokým provozním zatíženímRedis provádí operace s pamětí v kombinaci s omezením toku požadavků na API gateway, což umožňuje snadno zvládnout miliony požadavků za sekundu a zajistit hladký průběh procesu objednávání.
  • ?️ Data jsou naprosto spolehlivá.Redis atomické příkazy zabraňují přeprodeji, TDSQL-C poskytuje trvalé ukládání dat na úrovni finančních transakcí a vysokou dostupnost, což zajišťuje, že každá objednávka bude zadána přesně a bez chyb.
  • ? Náklady jsou maximálně optimalizované.Stratifikovaná architektura přenese většinu tlaku na cenově dostupnější úroveň cache. Díky elastickému charakteru TDSQL-C nemusíte pro špičkový provoz předem připravovat velké množství databázových zdrojů, což významně snižuje náklady.
  • ? Provoz a údržba jsou jednoduché a efektivní.Plně řízené služby eliminují potíže s provozem a údržbou základní infrastruktury, podporují flexibilní škálování a umožňují vývojovým týmům soustředit se více na inovace v oblasti podnikání.

Scénáře použití a použitelní zákazníci

  • Typické scénáře použití::
    • Velká e-commerce akce s bleskovými slevami.Nákup limitovaných produktů a rozdávání červených obálek během nákupních festivalů, jako je Double 11 nebo 618.
    • Systém prodeje vstupenek umožňuje rychlé nákupy vstupenek.Online prodej populárních vstupenek na koncerty, sportovní akce atd.
    • Premiéra populárního produktuOnline uvedení nových telefonů, populárních bot a dalších produktů.
  • Charakteristika vhodných zákazníků.::
    • Obchodní aktivita má výrazné výkyvy, přičemž počet souběžných požadavků dosahuje vrcholu více než 10 000 za minutu.
    • Požadavky na konzistenci dat jsou velmi vysoké a nelze akceptovat situace, jako je přeprodej nebo chybné objednávky.
    • Hledáme systémovou stabilitu a vysokou dostupnost a chceme vybudovat flexibilní architekturu zaměřenou na budoucnost.

Související odkazy