Del via


Introduktion til arbejdsbelastninger

I dette kapitel introduceres de vigtigste komponenter i vores system, og der gives et overblik over arkitekturen. Disse komponenter arbejder sammen om at skabe en robust og fleksibel platform til dine udviklingsbehov. Lad os dykke ned i disse komponenter og deres roller i vores arkitektur.

Fabric-arbejdsbelastningsarkitektur

Nogle af de vigtigste aspekter af Fabric-arbejdsbelastningsarkitekturen er:

  • Den håndterer databehandling, lager og administration. Den validerer Microsoft Entra ID-tokens, før de behandles, og interagerer med eksterne Azure-tjenester, f.eks. Lakehouse.

  • Arbejdsbelastningen Frontend (FE) tilbyder en brugergrænseflade til oprettelse, oprettelse, administration og udførelse af job.

  • Brugerinteraktioner via FE indleder anmodninger til BE, enten direkte eller indirekte via Fabric Backend (Fabric BE).

Du kan finde mere detaljerede diagrammer, der viser kommunikation og godkendelse af de forskellige komponenter, i Oversigt over Backend-godkendelse og godkendelse og diagrammerne Med godkendelsesoversigt .

Frontend (FE)

Frontend fungerer som basis for brugeroplevelsen (UX) og funktionsmåde, der fungerer inden for en iframe på Fabric-portalen. Det giver Fabric-partneren en specifik brugergrænsefladeoplevelse, herunder en elementeditor. Udvidelsesklientens SDK udstyrer de nødvendige grænseflader, API'er og bootstrapfunktioner til at transformere en almindelig webapp til en Micro Frontend-webapp, der fungerer problemfrit på Fabric-portalen.

Backend (BE)

Backend er kraftcenter til databehandling og metadatalager. Den anvender CRUD-handlinger til at oprette og administrere arbejdsbelastningselementer sammen med metadata og udfører job for at udfylde data i lageret. Kommunikationsbroen mellem frontend og backend etableres via offentlige API'er.

Arbejdsbelastningerne kan køre i to miljøer: lokalt og cloudmiljø. I lokal (devmode) kører arbejdsbelastningen på udviklerens computer med API-kald, der administreres af Værktøjet DevGateway. Dette værktøj håndterer også registrering af arbejdsbelastninger med Fabric. I cloudtilstand kører arbejdsbelastningen på partnertjenesterne, hvor API-kald foretages direkte til et HTTPS-slutpunkt.

Udviklingsmiljø

  • Arbejdsbelastningspakke til udviklingstilstand: Når du opretter backendløsningen i Visual Studio, skal du bruge konfigurationen Affind build til at oprette en BE NuGet-pakke, som kan indlæses i Fabric-lejeren ved hjælp af DevGateway-programmet.

Diagram over udviklertilstandsarkitekturen.

  • Arbejdsbelastningspakke i cloudtilstand: Når du bygger BE-løsningen i Visual Studio, skal du bruge konfigurationen Afgiv build til at oprette en separat arbejdsbelastningspakke (BE og FE). Denne pakke kan uploades direkte til lejeren.

Diagram over cloudtilstandsarkitekturen.

NuGet-pakkestruktur for arbejdsbelastning

Arbejdsbelastningen pakkes som en NuGet-pakke, der kombinerer backend- og frontendkomponenter. Strukturen overholder specifikke navngivningskonventioner og gennemtvinges af Fabric for at sikre ensartethed på tværs af uploadscenarier. NuGet-pakken, der er udviklet til at repræsentere arbejdsbelastninger, er struktureret til at omfatte både backend- og frontendkomponenter.

Backendstruktur

Backendsegmentet består af .xml filer, der definerer arbejdsbelastningen og dens tilknyttede elementer, som er vigtige for registrering med Fabric.

Nøglekomponenter
  • WorkloadManifest.xml - Arbejdsbelastningskonfigurationsfilen, der skal have dette nøjagtige navn til Fabric's kontrol.
  • Item1.xml, Item2.xml... – Manifester for individuelle elementer med fleksibel navngivning efter XML-formatet.

Frontendstruktur

Frontendafsnittet indeholder .json filer, der beskriver produktet og elementerne for frontend, sammen med en "assets"-mappe for ikoner.

Nøglekomponenter
  • Product.json - Hovedmanifestet for dit produkts frontend, som skal navngives præcist til Fabric's kontrol.
  • Item1.json, Item2.json... – Manifester for individuelle elementer med fleksibel navngivning efter JSON-formatet. Hver json svarer til et backend-manifest (f.eks. Item1.json til Item1.xml).
  • assets folder – Gemmer alle ikoner icon1.jpg, , icon2.pngsom ... bruges af frontend.

Obligatorisk strukturoverholdelse

Strukturen, herunder specifikke undermappenavne ('BE', 'FE', 'assets'), er obligatorisk og håndhæves af Fabric for alle uploadscenarier, herunder test- og udviklingspakker. Strukturen er angivet i de filer, .nuspec der blev fundet i lageret under Backend/src/Packages/manifest mappen.

Grænser

Følgende grænser gælder for alle typer NuGet-pakker, både i udviklingstilstand og cloudtilstand:

  • Kun BE og FE undermapper er tilladt. Alle andre undermapper eller filer, der er placeret uden for disse mapper, resulterer i en overførselsfejl.
  • Mappen BE accepterer kun .xml filer. En hvilken som helst anden filtype resulterer i en overførselsfejl.
  • Der må højst være 10 elementfiler, hvilket betyder, at mappen BE kan indeholde én WorkloadManifest.xml og op til 10 Item.xml filer. Hvis du har mere end 10 elementfiler i mappen, medfører det en overførselsfejl.
  • Undermappen Assets skal være placeret under FE mappen . Den kan indeholde op til 15 filer, hvor hver fil ikke er større end 1,5 MB.
  • Kun følgende filtyper er tilladt i Assets undermappen: .jpeg, , .jpg.png.
  • Mappen FE kan højst indeholde 10 elementfiler plus én product.json fil.
  • Der skal refereres til hvert aktiv i Assets mappen i elementfilerne. Et hvilket som helst aktiv, der refereres til fra en elementfil, som mangler i Assets mappen, medfører en overførselsfejl.
  • Filnavne for elementer skal være entydige. Duplikerede filnavne resulterer i en overførselsfejl.
  • Filnavne må kun indeholde alfanumeriske (engelske) tegn eller bindestreger og må ikke være længere end 32 tegn. Brug af andre tegn eller overskridelse af denne længde resulterer i en overførselsfejl.
  • Den samlede pakkestørrelse må ikke overstige 20 MB.
  • Se arbejdsbelastningsmanifestet for at få vist manifestspecifikke begrænsninger.

Lokal udviklingstilstand (devmode)

Arbejdsbelastningens backend (BE) fungerer på udviklerens computer. Api-kald til arbejdsbelastninger overføres via Azure Relay, hvor arbejdsbelastningens side af Azure Relay-kanalen administreres af et specialiseret kommandolinjeværktøj, DevGateway. API-kald til styring af arbejdsbelastning sendes direkte fra arbejdsbelastningen til Fabric og tilsidesætter Azure Relay-kanalen. DevGateway-værktøjet kontrollerer også registreringen af den lokale udviklingsforekomst af arbejdsbelastningen med Fabric inden for rammerne af et bestemt arbejdsområde. Ved afslutning af værktøjet DevGateway annulleres registreringen af arbejdsbelastningsforekomsten automatisk. Du kan få flere oplysninger i Back end-implementeringsvejledningen.

DevMode BE-skema

Diagram over udviklingstilstanden skal være skemaarkitektur.

Cloududviklingstilstand (cloudtilstand)

Arbejdsbelastningens backend (BE) fungerer inden for partnerens tjenester. Api-kald til arbejdsbelastning foretages direkte til HTTPS-slutpunktet som angivet i arbejdsbelastningsmanifestet. I dette scenarie er værktøjet DevGateway ikke påkrævet. Registreringen af arbejdsbelastningen med Fabric opnås ved at uploade NuGet-pakken til Fabric og derefter aktivere arbejdsbelastningen for lejeren. Du kan få flere oplysninger under Administrer en arbejdsbelastning i Fabric.

CloudMode BE-skema

Diagram over BE-skemaarkitekturen i cloudtilstand.