Sdílet prostřednictvím


Představujeme úlohy

Tato kapitola představuje klíčové komponenty našeho systému a poskytuje přehled architektury. Tyto komponenty spolupracují na vytvoření robustní a flexibilní platformy pro vaše potřeby vývoje. Pojďme se na tyto komponenty a jejich role ponoříme do naší architektury.

Architektura úloh infrastruktury

Mezi klíčové aspekty architektury úloh Infrastruktury patří:

  • Zpracovává zpracování, ukládání a správu dat. Před zpracováním ověří tokeny MICROSOFT Entra ID a komunikuje s externími službami Azure, jako je Lakehouse.

  • Front-end úlohy (FE) nabízí uživatelské rozhraní pro vytváření úloh, vytváření, správu a spouštění úloh.

  • Interakce uživatelů prostřednictvím fe inicializuje požadavky na BE, a to buď přímo nebo nepřímo prostřednictvím back-endu infrastruktury (Fabric BE).

Podrobnější diagramy znázorňující komunikaci a ověřování různých komponent najdete v přehledu ověřování a autorizace back-endu a diagramech přehledu ověřování.

Front-end (FE)

Front-end slouží jako základ uživatelského prostředí (UX) a chování, které funguje v rámci prvku iframe na portálu Fabric. Poskytuje partnerovi Fabric konkrétní prostředí uživatelského rozhraní, včetně editoru položek. Klientská sada SDK rozšíření poskytuje potřebná rozhraní, rozhraní API a funkce bootstrap k transformaci běžné webové aplikace na webovou aplikaci Micro Front-end, která bezproblémově funguje na portálu Fabric.

Back-end (BE)

Back-end je powerhouse pro zpracování dat a úložiště metadat. Využívá operace CRUD k vytváření a správě položek úloh spolu s metadaty a spouštění úloh pro naplnění dat v úložišti. Komunikační most mezi front-endem a back-endem se vytváří prostřednictvím veřejných rozhraní API.

Úlohy se můžou spouštět ve dvou prostředích: v místním prostředí a v cloudu. V místním prostředí (devmode) běží úloha na počítači vývojáře s voláními rozhraní API spravovanými nástrojem DevGateway. Tento nástroj také zpracovává registraci úloh v prostředcích Fabric. V cloudovém režimu se úloha spouští na partnerských službách s voláními rozhraní API provedenými přímo do koncového bodu HTTPS.

Vývojové prostředí

  • Balíček úloh v režimu dev: Při sestavování back-endového řešení v sadě Visual Studio vytvořte pomocí konfigurace sestavení ladění balíček BE NuGet, který lze načíst do tenanta Fabric pomocí aplikace DevGateway.

Diagram architektury vývojářského režimu

  • Balíček úloh v režimu cloudu: Při sestavování řešení BE v sadě Visual Studio použijte konfiguraci sestavení vydané verze k vytvoření samostatného balíčku úloh (BE a FE). Tento balíček lze nahrát přímo do tenanta.

Diagram architektury cloudového režimu

Struktura balíčků NuGet úloh

Úloha je zabalená jako balíček NuGet, který kombinuje back-endové a front-endové komponenty. Struktura dodržuje konkrétní zásady vytváření názvů a prostředky infrastruktury vynucují kvůli konzistenci napříč scénáři nahrávání. Balíček NuGet navržený tak, aby představoval úlohy, je strukturovaný tak, aby zahrnoval back-endové i front-endové komponenty.

Back-endová struktura

Back-endový segment se skládá ze .xml souborů, které definují úlohu a související položky, které jsou nezbytné pro registraci v prostředcích Fabric.

Klíčové komponenty
  • WorkloadManifest.xml – Konfigurační soubor úlohy, který musí mít tento přesný název pro ověření prostředků infrastruktury.
  • Item1.xml, , Item2.xml... – Manifesty pro jednotlivé položky s flexibilním pojmenováním podle formátu XML.

Front-endová struktura

Část front-endu obsahuje .json soubory s podrobnostmi o produktu a položkách pro front-end spolu s adresářem assets pro ikony.

Klíčové komponenty
  • Product.json - Hlavní manifest pro front-end vašeho produktu, který musí být pojmenován přesně pro ověření Fabric.
  • Item1.json, Item2.json, ... – Manifesty pro jednotlivé položky s flexibilním pojmenováním podle formátu JSON. Každý json odpovídá back-endovému manifestu (např. Item1.json Item1.xml).
  • assets složka - Ukládá všechny ikony icon1.jpg, icon2.pngpoužívané ... front-endem.

Dodržování povinných struktur

Struktura, včetně konkrétních názvů podsložek (BE, FE, Assets), je povinná a vynucuje prostředky infrastruktury pro všechny scénáře nahrávání, včetně testovacích a vývojových balíčků. Struktura je určena v souborech .nuspec nalezených v úložišti v adresáři Backend/src/Packages/manifest .

Omezení

Následující omezení platí pro všechny typy balíčků NuGet, a to jak ve vývojovém režimu, tak v cloudovém režimu:

  • BE Jsou povoleny pouze FE podsložky. Jakékoli jiné podsložky nebo soubory umístěné mimo tyto složky způsobí chybu nahrávání.
  • Složka BE přijímá pouze .xml soubory. Jakýkoli jiný typ souboru způsobí chybu nahrávání.
  • Je povoleno maximálně 10 souborů položek, což znamená BE , že složka může obsahovat jeden WorkloadManifest.xml a až 10 Item.xml souborů. Výsledkem více než 10 souborů položek ve složce je chyba nahrávání.
  • Podsložka Assets se musí nacházet ve FE složce. Může obsahovat až 15 souborů, přičemž každý soubor není větší než 1,5 MB.
  • V podsložce jsou povoleny Assets pouze následující typy souborů: .jpeg, .jpg, .png.
  • Složka FE může obsahovat maximálně 10 souborů položek a jeden product.json soubor.
  • Velikost product.json nesmí překročit 50 kB.
  • Každý prostředek ve Assets složce musí být odkazován v souborech položek. Jakýkoli prostředek odkazovaný ze souboru položky, který ve složce chybí Assets , způsobí chybu nahrání.
  • Názvy souborů položek musí být jedinečné. Duplicitní názvy souborů způsobí chybu nahrávání.
  • Názvy souborů musí obsahovat pouze alfanumerické znaky nebo spojovníky a nesmí překročit délku 32 znaků. Použití jiných znaků nebo překročení této délky způsobí chybu nahrávání.
  • Celková velikost balíčku nesmí překročit 20 MB.
  • Informace o omezeních specifických pro manifest najdete v manifestu úlohy.

Místní vývojový režim (devmode)

Back-end úlohy (BE) funguje na počítači vývojáře. Volání rozhraní API pro úlohy se přenášejí prostřednictvím služby Azure Relay se stranou kanálu Azure Relay spravovaného specializovaným nástrojem příkazového řádku DevGateway. Volání rozhraní API pro řízení úloh se odesílají přímo z úlohy do prostředků infrastruktury a obcházejí kanál Azure Relay. Nástroj DevGateway také dohlíží na registraci místní instance vývoje úlohy s Prostředky infrastruktury v kontextu konkrétního pracovního prostoru. Po ukončení nástroje DevGateway se registrace instance úlohy automaticky zruší. Další informace najdete v průvodci implementací back-endu.

Schéma DevMode BE

Diagram vývojového režimu je architektura schématu.

Režim vývoje cloudu (cloudový režim)

Back-end úlohy (BE) funguje v rámci služeb partnera. Volání rozhraní API pro úlohy se provádějí přímo do koncového bodu HTTPS, jak je uvedeno v manifestu úlohy. V tomto scénáři není vyžadován nástroj DevGateway. Registrace úlohy v prostředcích infrastruktury se provádí tak, že nahraje balíček NuGet úlohy do prostředků infrastruktury a následně aktivuje úlohu pro tenanta. Další informace najdete v tématu Správa úloh v prostředcích infrastruktury.

Schéma CloudMode BE

Diagram architektury schématu BE v cloudovém režimu