Muistiinpano
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää kirjautua sisään tai vaihtaa hakemistoa.
Tämän sivun käyttö edellyttää valtuutusta. Voit yrittää vaihtaa hakemistoa.
Microsoft Fabricin GraphQL:n ohjelmointirajapinta tarjoaa tehokkaan tavan kysellä tietoja tehokkaasti, mutta suorituskyvyn optimointi on avainasemassa sujuvan ja skaalautuvan suorituskyvyn varmistamisessa. Käsittelitpä sitten monimutkaisia kyselyitä tai optimoit vasteaikoja, seuraavat parhaat käytännöt auttavat sinua saamaan parhaan suorituskyvyn irti GraphQL-toteutuksestasi ja maksimoimaan ohjelmointirajapinnan tehokkuuden Fabricissa.
Kuka tarvitsee suorituskyvyn optimointia
Suorituskyvyn optimointi on ratkaisevan tärkeää:
- Sovelluskehittäjät rakentavat paljon liikennettä koskevia sovelluksia, jotka kysyvät Fabric-järvitaloja ja varastoja
- Data-insinöörit optimoivat Fabric-datan käyttökuvioita laajamittaisiin analytiikkasovelluksiin ja ETL-prosesseihin
- Fabric-työtilan ylläpitäjät hallinnoivat kapasiteetin kulutusta ja varmistavat tehokkaan resurssien käytön
- BI-kehittäjät parantavat vasteaikoja räätälöidyille analytiikkasovelluksille, jotka perustuvat Fabric-dataan
- DevOps-tiimit selvittävät viiveongelmia tuotantosovelluksissa, jotka käyttävät Fabric-rajapintoja
Hyödynnä näitä parhaita käytäntöjä, kun GraphQL API:si tarvitsee tehokkaasti käsitellä tuotantokuormia tai kun kohtaat suorituskykyongelmia.
Alueellinen suuntaus
Alueiden väliset API-kutsut ovat yleinen syy korkeaan viiveeseen. Optimaalisen suorituskyvyn saavuttamiseksi varmista, että asiakassovelluksesi, Fabric-vuokralaisesi, kapasiteetti ja tietolähteesi ovat kaikki samalla Azure-alueella.
Tarkista vuokralaisalueesi
Löytääksesi Fabric-vuokralaisen alueen:
- Kirjaudu Microsoft Fabric -portaaliin ylläpitäjätilillä
- Valitse Ohje-kuvake (?) oikeasta yläkulmasta
- Ohje-paneelin alareunasta valitse Tietoa kankaasta
- Huomaa alue, joka näkyy vuokralaisten tiedoissa
Tarkista kapasiteettialueesi
GraphQL:n API toimii tietyllä kapasiteetilla. Kapasiteettialueen löytämiseksi:
Avaa työtila, jossa isännöit API:asi GraphQL:lle
Mene Workspace-asetuksiin>Lisenssitiedot
Etsi alue kohdasta Lisenssikapasiteetti
Tarkista tietolähdealueesi
Tietolähteidesi sijainti vaikuttaa myös suorituskykyyn:
- Fabric-tietolähteet (Lakehouse, Data Warehouse, SQL Database): Nämä käyttävät samaa aluetta kuin työtilan kapasiteetti
- Ulkoiset tietolähteet (Azure SQL Database jne.): Tarkista resurssin sijainti Azure-portaalista
Paras käytäntö: Ota asiakassovellukset käyttöön samalle alueelle kuin Fabricin kapasiteetti ja tietolähteet verkon viiveen minimoimiseksi.
Suorituskyvyn testauksen parhaat käytännöt
Kun arvioit API:n suorituskykyä, noudata näitä ohjeita luotettavien ja johdonmukaisten tulosten saamiseksi.
Käytä realistisia testityökaluja
Testaa työkaluilla, jotka vastaavat tarkasti tuotantoympäristöäsi:
- Skriptit tai sovellukset: Käytä Python-, Node.js- tai .NET-skriptejä, jotka simuloivat todellista asiakaskäyttäytymistä
- HTTP-yhteyspoolaus: HTTP-yhteyksien uudelleenkäyttö viiveen vähentämiseksi, mikä on erityisen tärkeää alueita ylittävissä tilanteissa
- Istuntojen hallinta: Ylläpidä istuntoja eri pyyntöjen välillä, jotta ne heijastavat tarkasti todellista käyttöä
Esimerkkilähteitä:
- Esimerkkisuorituskyvyn testausskripti (Python-notebook)
- HTTP-istuntoobjektit Pythonissa
- HttpClient-ohjeet .NET:ille
Kerää merkityksellisiä mittareita
Tarkkaa suorituskyvyn arviointia varten:
- Automatisoi testaus: Käytä skriptejä tai suorituskyvyn testaustyökaluja testien suorittamiseen johdonmukaisesti määritellyn ajan kuluessa
- Lämmitä API:a: Suorita useita testikyselyitä ennen suorituskyvyn mittaamista (katso Lämmitysvaatimukset)
- Analysoi jakaumia: Käytä prosenttipohjaisia mittareita (P50, P95, P99) pelkkien keskiarvojen sijaan viivekuvioiden ymmärtämiseksi
- Testaa kuormituksen alla: Mittaa suorituskyky realistisilla samanaikaisilla pyyntömäärillä
- Dokumentoi olosuhteet: Kirjaa ylös vuorokaudenaika, kapasiteetin käyttöaste ja mahdolliset samanaikaiset työkuormat testauksen aikana
Yleisiä suorituskykyongelmia
Näiden yleisten ongelmien ymmärtäminen auttaa sinua diagnosoimaan ja ratkaisemaan suorituskykyongelmia tehokkaasti.
Lämmittelyvaatimukset
Ongelma: Ensimmäinen API-pyyntö kestää huomattavasti kauemmin kuin myöhemmät pyynnöt.
Miksi näin tapahtuu:
- API:n alustus: Käyttämättömänä ollessa API-ympäristön täytyy käynnistyä ensimmäisen puhelun aikana, mikä lisää muutaman sekunnin viivettä
- Datalähteiden lämmittely: Monet tietolähteet (erityisesti SQL Analytics -päätepisteet ja tietovarastot) käyvät läpi lämmittelyvaiheen, kun niihin pääsee käsiksi käyttämättömyyden jälkeen
- Yhdistetty alustus: Jos sekä API että tietolähde ovat käyttämättömiä, alustusajat kasaantuvat
Ratkaisu:
- Suorita 2–3 testikyselyä ennen suorituskyvyn mittaamista
- Tuotantosovelluksissa toteuta terveystarkastuspäätepisteet, jotka pitävät API:n lämpimänä
- Harkitse aikataulutettujen kyselyiden tai valvontatyökalujen käyttöä aktiivisen tilan ylläpitämiseksi aukioloaikoina
Alueellinen epäjärjestys
Ongelma: Johdonmukaisesti korkea viive kaikissa pyynnöissä.
Miksi näin tapahtuu: Alueiden väliset verkkokutsut lisäävät merkittävää viivettä, erityisesti kun asiakas, API ja tietolähteet ovat eri Azure-alueilla.
Ratkaisu:
- Varmista, että asiakassovelluksesi, Fabric-kapasiteetti ja tietolähteesi ovat samalla alueella
- Jos alueiden välinen pääsy on väistämätöntä, toteuta aggressiivisia välimuististrategioita
- Harkitse alueellisten API-replikoiden käyttöönottoa globaaleihin sovelluksiin
Tietolähteiden suorituskyky
Ongelma: API-pyynnöt ovat hitaita, vaikka API olisi lämmitetty ja alueet linjassa.
Miksi näin tapahtuu: API for GraphQL toimii kyselyrajapintana tietolähteidesi yli. Jos taustalla olevalla tietolähteellä on suorituskykyongelmia – kuten puuttuvia indeksejä, monimutkaisia kyselyjä tai resurssirajoitteita – API perii nämä rajoitukset.
Ratkaisu:
- Testaa suoraan: Kysy suoraan tietolähdettä (SQL:llä tai muilla natiivityökaluilla) perustason suorituskyvyn määrittämiseksi
-
Optimoi tietolähde:
- Lisää sopivat indeksit usein haetuille sarakkeille
- Harkitse oikeaa tietovarastoa käyttötapaukseesi: Fabric-päätösopas – valitse tietovarasto
- Tarkastele kyselyjen suoritussuunnitelmia optimointimahdollisuuksien osalta
- Oikean kokoinen kapasiteetti: Varmista, että Fabric-kapasiteetin SKU tarjoaa riittävästi laskentaresursseja. Katso Microsoft Fabric Concepts -ohjeet sopivan kapasiteetin valintaan.
Kyselysuunnittelu
Ongelma: Jotkut kyselyt toimivat hyvin, kun taas toiset ovat hitaita.
Miksi näin tapahtuu:
- Ylihakeminen: Kenttien pyytäminen liikaa lisää käsittelyaikaa
- Syvä sisäkkäisyys: Kyselyt, joissa on useita sisäkkäisiä suhteita, vaativat useita ratkaisijoiden suorituksia
- Puuttuvat suodattimet: Kyselyt ilman sopivia suodattimia voivat palauttaa liikaa dataa
Ratkaisu:
- Pyydä vain ne kentät, joita tarvitset GraphQL-kyselyssäsi
- Rajoita sisäkkäisten suhteiden syvyyttä mahdollisuuksien mukaan
- Käytä sopivia suodattimia ja sivutusta kyselyissäsi
- Harkitse monimutkaisten kyselyiden jakamista useisiin yksinkertaisempiin kyselyihin tarpeen mukaan