Idea řešení
Pokud se chcete podívat, jak tento článek rozšíříme o další informace, jako jsou potenciální případy použití, alternativní služby, aspekty implementace nebo pokyny k cenám, dejte nám vědět pomocí GitHub Feedback!
Tato architektura poskytuje řešení s vysokou dostupností pro webovou aplikaci, která používá obrovské objemy dat. Sekundární oblast slouží jako pohotovostní režim pro primární a zlepšuje dostupnost. Primární oblast odesílá data do sekundárního nástroje pomocí integrovaných možností replikace Azure Storage.
Data se ukládají do tabulek Azure Table Storage. stejně jako u libovolné Azure Storage služby se Table Storage data replikují v primární oblasti synchronně třikrát. Aby byla k dispozici pro pohotovostní použití, je také replikována asynchronně třikrát v sekundární oblasti. informace o replikaci Azure Storage najdete v tématu Azure Storage redundance.
Architektura zahrnuje mezipaměť pro tabulky, které omezují přístup k zatížení a zlepšují odezvu aplikace.
Poznámka
Vaše aplikace může za určitých okolností vyžadovat více účtů úložiště. Další informace najdete v tématu věnovaném důležitým informacím.
Potenciální případy použití
Tato architektura může být vhodná pro libovolnou aplikaci, která používá obrovský objem dat, který musí být vždycky dostupný. Mezi příklady patří aplikace:
- Sledujte návyky útraty zákazníků a chování při nákupu.
- Předpověď počasí.
- Nabídněte inteligentní provoz nebo implementujte systémy inteligentního provozu nebo využijte inteligentní technologie pro monitorování provozu.
- Analyzujte data z výroby Internet věcí (IoT).
- Zobrazit data inteligentního měřiče nebo pomocí inteligentní technologie monitorovat data měřičů.
Architektura
Stáhněte si soubor aplikace Visio s touto architekturou.
- klient se ověřuje pomocí Azure Active Directory (Azure AD) a uděluje přístup k webovým aplikacím hostovaným v Azure App Service.
- Přední dvířka Azure, brána firewall a vrstva 7 pro vyrovnávání zatížení přepíná uživatelský provoz do pohotovostní oblasti v případě regionu výpadku.
- Azure App Service hostuje websites a RESTful webová rozhraní API. Klienti prohlížeče spouštějí aplikace AJAX, které používají rozhraní API.
- Webová rozhraní API deleguje aplikace funkcí pro zpracování úloh na pozadí. úkoly jsou zařazené do fronty ve frontě Queue Storage Azure.
- Aplikace funkcí hostované Azure Functions provádějí úlohy na pozadí aktivované zprávami ve frontě.
- Mezipaměť Azure pro Redis ukládá data tabulek pro aplikace Function App. Tím se přesměruje databázová aktivita a urychlí se aplikace Function App a Web Apps.
- Azure Table Storage obsahuje data používaná webovými aplikacemi.
- Table Storage podporuje synchronní replikaci dat napříč zónami dostupnosti v oblasti za účelem zmírnění výpadků datového centra. Také používá asynchronní replikaci pro replikaci dat napříč různými oblastmi Azure k nápravě regionálních výpadků a zlepšení dostupnosti aplikace.
Komponenty
- Azure Active Directory (Azure AD) je víceklientské služba pro správu identit a přístupu, která se může synchronizovat s místním adresářem.
- Azure DNS je hostitelská služba s vysokou dostupností pro domény DNS, která poskytuje aplikacím rychlé dotazy DNS a rychlé aktualizace záznamů DNS. Správa Azure DNS je podobná správě dalších služeb Azure a používá stejné přihlašovací údaje, rozhraní API, nástroje a fakturaci.
- přední dvířka Azure jsou zabezpečená síť pro doručování obsahu (CDN) a nástroj pro vyrovnávání zatížení s rychlým převzetím služeb Funguje na okraji blízko uživatelům, urychluje doručování obsahu a zároveň chrání aplikace, rozhraní API a weby před internetovými hrozbami.
- Azure App Service je plně spravovaná služba pro sestavování, nasazování a škálování webových aplikací. Aplikace můžete vytvářet pomocí .NET, .NET Core, Node.js, Java, Pythonu nebo PHP. aplikace můžou běžet v kontejnerech nebo na Windows nebo Linux. V rámci migrace sálového počítače se můžou klientské obrazovky nebo webové rozhraní kódovat jako rozhraní REST API založená na protokolu HTTP. Můžou být oddělené a můžou být bezstavové pro orchestraci systému založeného na mikroslužbách. Další informace o webových rozhraních API najdete v tématu design RESTful webového rozhraní API.
- Azure Functions poskytuje prostředí pro spouštění malých částí kódu nazývaných funkce, aniž by bylo nutné navázat infrastrukturu aplikace. Můžete ji použít ke zpracování hromadných dat, integraci systémů, práci s IoT a vytváření jednoduchých rozhraní API a mikroslužeb. Pomocí mikroslužeb můžete vytvářet servery, které se připojují ke službám Azure a jsou vždycky aktuální.
- Azure Storage je sada rozsáhlě škálovatelných a zabezpečených cloudových služeb pro data, aplikace a úlohy. zahrnuje azure Files, azure Table Storagea azure Queue Storage. Soubory Azure jsou často účinným nástrojem pro migraci úloh sálového počítače.
- Azure Queue Storage poskytuje jednoduché a nákladově efektivní a odolné fronty zpráv pro velké úlohy.
- Azure Table Storage je úložiště NoSQL klíč-hodnota pro rychlý vývoj, který využívá obrovských částečně strukturovaných datových sad. Tabulky jsou bez schématu a přizpůsobují se okamžitě podle potřeb změny. Přístup je rychlý a nákladově efektivní pro mnoho typů aplikací a obvykle náklady méně než jiné typy úložiště s klíčem.
- Azure cache pro Redis je plně spravovaná služba pro ukládání do mezipaměti v paměti a zprostředkovatel zpráv pro sdílení dat a stavu mezi výpočetními prostředky. Zahrnuje Open Source Redis i komerční produkt z Redis Labs jako spravované služby. Můžete zlepšit výkon vysoce propustnosti online aplikací pro zpracování transakcí tím, že je navrhujete pro škálování a používání úložiště dat v paměti, jako je například Azure cache pro Redis.
Alternativy
- Azure Traffic Manager směruje příchozí požadavky DNS napříč globálními oblastmi Azure na základě vašeho výběru metod směrování provozu. Poskytuje taky automatické převzetí služeb při selhání a směrování výkonu.
- Azure Content Delivery Network ukládá do mezipaměti statický obsah na hraničních serverech pro rychlou odezvu a pomocí optimalizací sítě urychlí odezvu na dynamický obsah. Content Delivery Network je užitečná hlavně v případě, že je uživatelská základna globální.
- Služba Azure Kubernetes Service (AKS) je plně spravovaná služba Kubernetes pro nasazení a správu kontejnerových aplikací. Můžete ji použít k implementaci architektury mikroslužeb, jejíž součásti se škálují nezávisle na vyžádání.
- Azure Container Instances poskytuje rychlý a jednoduchý způsob, jak spouštět úlohy bez nutnosti spravovat infrastrukturu. To je užitečné během vývoje nebo pro spouštění neplánovaných úloh.
- Azure Service Fabric je platforma pro škálování a orchestraci kontejnerů a mikroslužeb.
- Azure Service Bus je spolehlivá cloudová služba zasílání zpráv pro jednoduchou hybridní integraci. dá se použít místo Queue Storage v této architektuře. další informace najdete v tématu Storage fronty a Service Bus fronty – porovnání a kontrast.
Požadavky
existují omezení výkonu pro Table Storage, která se dají překonat přidáním Storagech účtů. Následující okolnosti můžou vyžadovat další účty:
- Implementace víceklientské architektury pro podporu více zákazníků
- Podpora zákazníků s vyššími sazbami za transakce
- Podpora zákazníků s velkými datovými sadami
- Urychlení přístupu k datům distribucí dat mezi více účtů úložiště
- Oddělení dat do horké, studené a archivní úrovně
- Vytvoření kopií dat pro účely zálohování a generování sestav
Další informace najdete v tématu škálovatelnost a cíle výkonnosti pro Table Storage.
replikace Table Storage není k dispozici v některých oblastech Azure.
Data v sekundární oblasti mají konečnou konzistenci, což znamená, že existuje prodleva mezi časem, kdy k aktualizaci dojde v primární oblasti a kdy se zobrazuje v sekundární oblasti. Vzhledem k tomu, že replikace z primární oblasti do sekundární oblasti je asynchronní, může dojít ke ztrátě dat v případě, že dojde k chybě primární oblasti a nedojde k jejímu obnovení. V současné době není k dispozici žádná smlouva o úrovni služeb (SLA), jak dlouho trvá replikace dat do sekundární oblasti. Další informace najdete v článku Možnosti redundance Azure Storage.
Další kroky
- Styl architektury web-fronta-pracovní proces
- Strategie dělení dat
- Použití geografické redundance k návrhu vysoce dostupných aplikací
- Pokyny pro návrh tabulek