Tranzitní centrum – dynamický systém zasílání zpráv pub-sub

Azure Cache for Redis
Azure Cosmos DB
Azure Event Hubs
Azure Functions
Azure Service Bus

Nápady na řešení

Tento článek je nápadem na řešení. Pokud chcete, abychom obsah rozšířili 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 prostřednictvím zpětné vazby na GitHubu.

Tento článek popisuje elastický flexibilní model publikování a odběru , který umožňuje producentům a spotřebitelům dat vytvářet a využívat ověřený, kurátorovaný obsah nebo data.

Architektura

Diagram systému zasílání zpráv o publikování a odběru služby Transit Hub

Stáhněte si soubor aplikace Visio s touto architekturou.

Tok dat

  1. Aplikace Data Producer publikuje data do Azure Event Hubs, která je odesílá do funkce zpracování událostí Azure Functions.

  2. Producent dat také odešle schéma JSON pro úložiště v kontejneru Azure Storage.

  3. Funkce Zpracování událostí načte schéma JSON z Azure Cache for Redis, aby se snížila latence, a pomocí schématu ověří data.

    Pokud schéma ještě není uložené v mezipaměti, funkce Zpracování událostí načte schéma z kontejneru Azure Storage. Požadavek na schéma také ukládá schéma do Azure Cache for Redis pro budoucí načtení.

    Poznámka

    Registr schémat Azure ve službě Event Hubs může být životaschopnou alternativou k ukládání a ukládání schémat JSON do mezipaměti. Další informace najdete v tématu Azure Schema Registry ve službě Event Hubs (Preview).

  4. Pokud téma již existuje a data jsou platná, funkce Zpracování událostí sloučí data do existujícího tématu Platná data Azure Service Bus a odešle téma do aplikace Příjemce dat.

  5. Pokud téma již existuje a data jsou neplatná, funkce Zpracování událostí sloučí data do existujícího neplatného tématu služby Data Service Bus a odešle téma zpět producentovi dat. Producent dat se přihlásí k odběru témat Neplatná data , aby získal zpětnou vazbu o neplatných datech, která producent vytvořil.

  6. Pokud téma ještě neexistuje, funkce Zpracování událostí publikuje nová data do nového tématu služby Data Service Bus a odešle téma do funkce Správce témat služby Service Bus .

  7. Pokud jsou nová data platná, funkce Zpracování událostí také vloží data jako nový záznam snímek dat do služby Azure Cosmos DB.

  8. Pokud jsou nová data platná, funkce Správce témat služby Service Bus vytvoří nové téma platné služby Data Service Bus a odešle toto téma do služby Event Hubs.

  9. Pokud jsou nová data neplatná, funkce Správce témat služby Service Bus vytvoří nové neplatné téma služby Data Service Bus a odešle toto téma zpět do aplikace Data Producer .

  10. Procesor plochých souborů dat snímků v Azure Data Factory běží podle plánu a extrahuje všechna data snímků z databáze Azure Cosmos DB s daty snímků. Procesor vytvoří plochý soubor a publikuje ho do plochého souboru snapshot data ve službě Azure Storage ke stažení.

  11. Aplikace Příjemce dat načte seznam všech témat služby Service Bus, která je v nástroji Service Bus Topic Manager k dispozici pro odběr. Aplikace se zaregistruje ve Správci témat služby Service Bus , aby se přihlásila k odběru témat služby Service Bus.

Komponenty

Podrobnosti scénáře

Transit Hub je dynamický model publikování a odběru pro producenty dat a příjemce dat, který umožňuje vytvářet a využívat ověřený, kurátorovaný obsah nebo data. Model je elastický, aby umožňoval škálování a výkon. Producenti dat můžou data rychle nasadit a nahrát do služby. Služba ověří data podle schématu, které poskytuje producent dat. Služba pak zpřístupňuje ověřená data odběratelům, aby mohli využívat data, která je zajímají.

Služba, která ověřuje data, nemusí vědět o datové části, ale jenom jestli je platná pro schéma, které poskytuje producent. Tato flexibilita znamená, že služba může přijímat nové typy datových částí bez nutnosti opětovného nasazení. Toto řešení také umožňuje příjemcům dat získat historická data, která byla publikována před odběrem příjemce.

Potenciální případy použití

Tento model je zvlášť užitečný v následujících scénářích:

  • Systémy zasílání zpráv, ve kterých je svazek a stav uživatele neznámý nebo se nepředvídatelně liší
  • Systémy publikování, které potenciálně potřebují podporovat nové nebo neznámé zdroje dat
  • Obchodní systémy nebo systémy lístků, které potřebují průběžně aktualizovat data a ukládat je do mezipaměti pro rychlé doručení

Přispěvatelé

Tento článek spravuje Microsoft. Původně ji napsali následující přispěvatelé.

Hlavní autor:

Pokud chcete zobrazit neveřejné profily LinkedIn, přihlaste se k LinkedInu.

Další kroky