Úvod (analýza bolestivých míst)

Jako architekt nebo vývojář e-commerce platformy, máte k nadcházejícím propagačním akcím dvojí vztah – lásku a nenávist? Akce jako „slevy za sekundu“ nebo „omezené nákupní příležitosti“ mohou přilákat obrovský objem návštěvnosti a vést k významnému nárůstu prodeje, ale technické výzvy, které s sebou přinášejí, mohou být opravdovou noční můrou.

  • Krátkodobý vrchol průtoku:Jakmile akce začala, provoz systému prudce vzrostl o desítky nebo dokonce stovky oproti běžnému stavu a tradiční klastry pevných zdrojů byly okamžitě přetíženy, což vyústilo v nedostupnost služby.
  • Náklady na zdroje a nevyužití:Pokud bychom za účelem zvládnutí špiček po celý rok udržovali vysoce konfigurované klastry, velké množství výpočetních zdrojů by zůstalo nevyužito během neaktivních období systému 99%, což by vedlo k obrovskému plýtvání náklady.
  • Riziko nadměrného prodeje zásob:V případě vysoké frekvence požadavků, kdy více požadavků současně vyhledává a snižuje stejné zásoby, může velmi snadno dojít k “přeprodání” (prodej většího množství než skutečné zásoby), což může vést k vážným finančním ztrátám a stížnostem zákazníků.

Pokud vás trápí, jak zvládnout náhlý nárůst provozu za nižších nákladů a zcela eliminovat přehnané množství zásob, tento článek vám poskytne kompletní řešení bez serverů.

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

Následující schéma jasně ukazuje hlavní komponenty a tok dat systému pro bleskové nákupy založeného na Serverless Application Engine (SAE) společnosti Alibaba Cloud.

Aplikační engine Serverless od Alibaba Cloud (SAE): sekundární architektura, u které se nemusíte obávat překročení limitu zásob – LikaCloud.

Přehled architektury:

Žádost uživatele nejprve projdeBalancování zátěže CLBMikroservisní brána MSEProvádí distribuci provozu a jednotnou autentizaci. Hlavní obchodní logika (například bleskové nabídky, objednávky) je nasazena naBezserverový aplikační engine SAENa jedné straně je SAE schopné extrémně rychle škálovat na základě počtu souběžných požadavků v reálném čase během jedné sekundy, což umožňuje snadné zvládnutí špiček provozu. Po skončení události se automaticky zmenší na nulu, což maximalizuje nákladovou efektivnost.

Jakmile žádost o bleskovou slevu vstoupí do systému, nejprve se provede její kontrola.Cloudová databáze Redis EditionProveďte odečtení z předběžného skladového zásoby a využijte atomické operace Redis k zajištění přesnosti skladové zásoby. Po úspěšném odečtení vytvořte asynchronní zprávu o objednávce a zapíšte ji.Zpravodajská fronta RocketMQProvedeme vyrovnání špiček a dolů a nakonec služba objednávek v SAE spotřebuje zprávy a asynchronně dokončí zápis do databáze, což významně uleví hlavní databázi.RDSTlaku.

Nabídka hodnoty.Toto řešení vyřešilo problémy s náklady na zdroje a stabilitou při špičkách pomocí maximální flexibility SAE a zásadně zabránilo přeprodání zásob díky modelu “atomické odečtení v Redis + asynchronní fronty zpráv”.

Základní produkty a komponenty

Název komponentyhrát roliKlíčová doporučení pro konfiguraci/výběrProč si ji vybrat
Bezserverový aplikační engine (SAE)Jádrový výpočetní engineHostovat mikroservisní aplikace, jako jsou logika bleskových nabídek a objednávkové služby.Doporučuje se zapnoutFlexibilní časové plánování(Rozšíření kapacity před začátkem akce) aElasticita ukazatelů(Dynamické škálování na základě ukazatelů CPU/paralelnosti).Není nutné řídit server, poskytuje flexibilní škálování v řádu sekund, podporuje snížení kapacity na nulu, platíte za použití a dokonale se hodí pro situace, kdy je třeba rychle prodat velké množství zboží.
Cloudová databáze Redis EditionVrstva cache a centrum pro snížení zásobUkládat do mezipaměti důležitá data, jako jsou podrobnosti o produktech, a to prostřednictvímDECRPo provedení atomické instrukce je nutné provést snížení zásob, aby nedošlo k přehnanému prodeji.VýběrTyp pamětiSpecifikace zaručují vysoký výkon; doporučuje se jej aktivovat.PersistenceAby nedošlo ke ztrátě dat.Poskytnutí vysoké čtecí a zápisové výkonnosti a operací s atomickými daty je klíčem k řešení problémů s vysokou paralelností inventáře.
Zpravodajská fronta RocketMQAsynchronní oddělení a vyrovnávání výkyvů poptávky po elektřice.Přeměňte úspěšné požadavky na bleskové nabídky na asynchronní zprávy o objednávkách, zabraňte dočasnému přetížení a ochraňte dolní část databáze.Doporučujeme použít…Pořadí zprávZajistěte, aby objednávky stejného zboží byly zpracovány v pořadí.Vysoká propustnost a vysoká spolehlivost, schopnost zpracovávat velké množství zpráv a zajistit, aby žádosti o nákup za nejnižší cenu nebyly ztraceny, a také větší stabilita celého systému.
Cloudová databáze RDS MySQLKonečná datová persistenceUkládání hlavních údajů o zboží, informací o konečných objednávkách atd.VýběrVysoká dostupnost(Jeden hlavní a jeden záložní) a zvolte specifikace podle rozsahu podnikání.Zbaví vás starostí s provozem a údržbou databáze, zajistí spolehlivost dat a ve spojení s frontami zpráv umožní dosažení konečné konzistence.
Mikroservisní engine MSEMikroservisní bránaNabízí funkce jako směrování, autentizace, omezení toku dat a vypínání služeb a představuje jednotný vstupní bod a bezpečnostní bariéru systému.Nastavení rozhraní pro bleskové nabídkyPřesné omezení provozu.Zabraňte tomu, aby malicherné požadavky přetížily back-endové služby.Zvýšení bezpečnosti, stability a viditelnosti systému umožňuje vývojářům soustředit se více na obchodní logiku.

Shrnutí přínosů programu

  • 🚀 Elastičnost v řádu sekund, nikdy nedojde k výpadku:SAE dokáže rozšířit počet instancí za 1 sekundu, snadno zvládnout miliony souběžných požadavků a zajistit, aby služba byla během akce neustále dostupná.
  • 💰 Nejnižší náklady, platíte jen za to, co potřebujete:Služba je účtována podle skutečně použitých zdrojů a po skončení aktivity dochází k automatickému zmenšení kapacity. Ve srovnání s tradiční architekturou mohou být náklady na zdroje sníženy o více než 701 TP4T.
  • 🛡️ Zabraňte přeprodeji a ochraňte své finanční prostředky:Redukce zásob založená na atomových operacích Redisu zcela vyřeší problém s přebídkami z logického hlediska a zajistí ochranu zájmů podniků.
  • 🔧 Bez nutnosti údržby a správy, soustředění na podnikání:Plně řízené cloudové produkty umožňují týmu pro provoz a údržbu zbavit se administrace infrastruktury a rychleji inovovat obchodní funkce.

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

  • Základní scéna.Krátkodobé vysoce paralelní aktivity na e-commerce platformách, jako jsou bleskové nabídky, časově omezené nákupy, uvedení nových produktů na trh nebo rozdávání kuponů.
  • Použitelné charakteristiky zákazníka.
    • Obchodní aktivity vykazují významné výkyvy a snahou je dosáhnout maximální využitelnosti zdrojů a optimalizace nákladů.
    • Byli jsme zaskočeni problémem s nadměrným prodejem zásob a požadavky na konzistenci dat byly velmi přísné.
    • Tým pro vývoj, provoz a údržbu má omezené lidské zdroje a chce maximalizovat snížení komplexnosti provozu a údržby infrastruktury.

Související odkazy

Bezserverový aplikační engine (SAE) Připraveno k použití: správa mikroslužeb, protokolování, monitorování a další doplňkové funkce.
Bezplatná zkušební verze SAE Získejte cloudové produkty ihned a vydejte se na cestu praktického využívání cloudu.
Cloudová databáze Redis Edition Různé úložné média (paměť, trvalá paměť, disk)
Cloudová databáze RDS MySQL Flexibilně škálovatelná online databáze MySQL.
Mikroservisní engine MSE Registrační konfigurační centrum, správa mikroslužeb, plánování úloh, cloudový nativní gateway.
Zpravodajská fronta RocketMQ. Distribuovaná platforma pro jednotné zpracování “zpráv, událostí a datových proudů”.
Vybudovat vysoce výkonný systém pro bleskové nákupy. Jak využít produkty Alibaba Cloud k vytvoření vysoce výkonného systému pro bleskové nákupy.