Razumevanje uvida (verzija za pregled)
[Ova tema predstavlja preliminarnu dokumentaciju i može se promeniti.]
Uvid u performanse distribuira uvide u sledeće kategorije:
- Sveukupne performanse
- Okruženje klijenta
- Obrazac upotrebe
- Performanse stranice
- Prilagođavanje
- Konfigurisanje
- Mreža Kako na performanse aplikacije mogu da utiču različiti faktori, uvidi u performanse kategorizuju područja kako bi se proverio nivo uticaja na učinak.
Sveukupne performanse
Ovaj uvid rezimira ukupne performanse vaše aplikacije kao izvršni sažetak pod u okviru parametra ID uvida Perf.Summary.Overview.
U ovom uvidu možete da vidite ukupne performanse aplikacije na osnovu ozbiljnosti.
- Kritično: Ukazuje na loše performanse.
- Upozorenje: Ukazuje na to da bi se performanse mogle poboljšati.
- Informativo: Ukazuje na dobre performanse.
Način poboljšanja
Kada dođe vreme za optimizaciju aplikacije, možete pogledati detaljne uvide klijenta, mreže, kategorije prilagođavanja kao i dodatke, savedQeury i podešavanja. Neke operativne stavke mogu se dobiti pregledom tih uvida.
Okruženje klijenta
Kada korisnici iskuse Power Apps aplikaciju na svojim uređajima, nekoliko faktora može uticati na performanse, poput tipa pregledača, verzije pregledača i specifikacije hardvera. U ovom odeljku možete videti koji uvid proverava okruženja klijenta.
Tip pregledača
ID uvida: Perf.Environment.Client.Browser.Type
Motivacija
Određeni tipovi veb-pregledača mogu uticati na performanse vaše aplikacije. Korišćenje nepodržanih ili nesavremenih pregledača može dovesti do sporih performansi. Ovaj uvid pruža implikacije na performanse različitih pregledača, posebno onih koji se ne preporučuju. Na primer, Power Apps ima zastarelu podršku za Internet Explorer.
Način poboljšanja
Ako imate korisnike na starim pregledačima kao što je Internet Explorer, pređite na savremeni pregledač zasnovan na Chromium-u. Korisnicima preporučujemo pokretanje savremenog pregledača, kao što je Microsoft Edge ili Google Chrome.
Napomena
Neke stare verzije aplikacija koje koriste NPAPI će raditi samo na pregledaču Internet Explorer.
Verzija pregledača
ID uvida: Perf.Environment.Client.Browser.Version
Motivacija
Ovaj uvid proverava koliko korisnika koristi vašu aplikaciju iz stare verzije pregledača. Čak i kada korisnici koriste savremene pregledače, a ne tipove pregledača koji nisu podržani poput pregledača Internet Explorer, starije verzije pregledača rade sporije.
Način poboljšanja
Korisnici treba da redovno da vrše ažuriranje na najnoviju verziju pregledača. Korisnici u velikim preduzećima mogu primeniti smernice grupe da bi bili na određenoj verziji. Kako Unified Service Desk (USD) takođe koristi podrazumevana podešavanja pregledača računara, takođe zahteva proveru podrazumevanog tipa i verzije pregledača.
Minimalni sistemski zahtevi
ID uvida: Perf.Environment.Device.MimimumRequirements
Motivacija
Ovaj uvid proverava da li okruženje korisnika ispunjava minimalne sistemske zahteve. Možete proveriti zahteve za veb-aplikacije da biste videli koji su minimalni sistemski zahtevi u zavisnosti od tipa aplikacije.
Generalno se neke aktivnosti poput generisanja, izvršavanja skripti i preuzimanja sadržaja dešavaju na strani klijenta. Za takve aktivnosti neophodno je ispuniti minimalne sistemske zahteve.
Način poboljšanja
Korisnici bi trebalo da koriste hardver koji ispunjava ili premašuje minimalne sistemske zahteve za Power Apps.
HTTP protokol
ID uvida: Perf.Environment.Client.Browser.HttpProtocol
Motivacija
Power Apps platforma podržava HTTP/2. Međutim, ako vaša aplikacija koristi HTTP/1.1 protokol za XMLHttpRequest (XHR) zahteve na Power Apps, to bi moglo prouzrokovati spore performanse zbog istovremenih ograničenja zahteva sa HTTP/1.1 protokolom.
Način poboljšanja
Ako je ovaj uvid identifikovao neke korisnike koji koriste HTTP/1.1 protokol, toplo preporučujemo da klijent ovog korisnika podrži HTTP/2 protokol.
Nekoliko konfiguracija i mrežna infrastruktura mogu da blokiraju HTTP/2 protokol, kao što su VPN mreža, proksi server ili podešavanja internet opcija uređaja.
Korisnici mogu da provere koji se protokol koristi pomoću razvojnog alata koji se isporučuje sa pregledačem. Na slici ispod, mrežni pozivi su se odvijali preko HTTP/2.
Ako praćenje mrežnog protokola ukazuje na HTTP/1.1, to je možda zbog sledećeg:
- Internet podešavanja: Windows internet opcije, kartica Napredno na kontrolnoj tabli, opcije Koristi HTTP2 i Koristi TLS 1.2 nisu omogućene.
- VPN i proksi: Iako je Windows internet opcija podešena da koristi HTTP2 i TLS 1.2, pregledač može da zakaže kada VPN ili proksi ne podržavaju novije protokole.
Obrazac upotrebe
Ova kategorija analizira vrstu učitavanja stranica. Toplo učitavanje stranice generiše stranicu upotrebom predmemorije i postojećih DOM objekata, dok hladno učitavanje stranice generiše stranicu preuzimanjem resursa po potrebi. Iako korisnici neće razlikovati vrstu učitavanja stranice, ovaj uvid analizira i daje preporuke u zavisnosti od toga koja vrsta učitavanja stranice se dešava klijentu.
Vrsta učitavanja stranice
ID uvida: Perf.Performance.PageLoadType
Motivacija
Toplo učitavanje stranica brže je od hladnog učitavanja stranica, jer se neophodni resursi učitavaju iz lokalne keš memorije.
Napomena
Kada korisnik otvori obrazac iz nove kartice ili nove kartice u pregledaču, to se smatra hladnim učitavanjem stranice. Kad korisnik otvori druge obrasce u aplikaciji na aktivnoj kartici pregledača, to se smatra toplim učitavanjem stranice.
Način poboljšanja
Da biste iskusili toplo učitavanje stranica radi bržih performansi, minimizirajte otvaranje novih kartica ili prozora pregledača. Pokušajte da zadržite aktivnosti na jednoj kartici, umesto da otvarate nove kartice ili prozore pregledača. Takođe preporučujemo da pregledač ne pokrećete u režimu InPrivate ili anonimno.
Performanse stranice
Mnoge nezavisne aplikacije zasnovane na modelu sastoje se od kontrolne table, prikaza (EntityList) i obrasca kada je reč o tipu stranice. Korisnici podrazumevano učitavaju kontrolnu tablu, iako proizvođači aplikacija i administratori to mogu promeniti. Ako kontrolna tabla sadrži mnogo grafikona i pločica, to bi moglo dovesti do sporog učitavanja kontrolne table. Slično tome, ako se EntityList i obrasci prilagode tako da dodaju mnogo kolona i prikažu mnogo zapisa, to takođe može dovesti do sporog učitavanja stranice. Dakle, provera performansi po stranici i po tabeli može da bude korisna jer performanse učitavanja stranice mogu da imaju različite uzroke.
U ovom odeljku možete videti nekoliko uvida u vezi sa učinkom stranice.
Spore kontrolne table
ID uvida: Perf.ModelDriven.Page.Dashboard.SlowSQLQuery
Motivacija
Spori SQL upiti ili korišćenje previše grafikona i pločica na kontrolnoj tabli može prouzrokovati loše performanse kontrolne table. Ovaj uvid ukazuje na kontrolne table na koje utiču spori SQL upiti. Kada se taj uvid zabeleži, okvir Detalji uključuje ID kontrolne table za svaku kontrolnu tablu koja je uključena u uvid.
Način poboljšanja
Evo kako da pronađete naziv kontrolne table pomoću ID-a kontrolne table. Zatim možete odrediti koje kontrolne table treba uzeti u obzir za redizajn.
Idite u aplikaciju zasnovanu na modelu, na primer https://contoso.crm.dynamics.com.
Izmenite URL adresu kao što je prikazano u ovom primeru (https://contoso.dynamics.com/api/data/v9.1/systemforms[DashboardId]/name) dodavanjem api/data/v9.1/systemforms([DashboardId])/name na URL aplikacije.
Dobićete OData zahtev sličan dole navedenom. Kontrolna tabla agenta prikazana dole predstavlja korisničko ime datog ID-a kontrolne table.
{"@odata.context":https://contoso.crm.dynamics.com/api/data/v9.1/$metadata#systemforms(2ff4a8cf-378b-e811-a964-000d3a30dc0a)/name,"value":"Contoso - Agent Dashboard"}
Sinhroni dodaci sa sporim spoljnim pozivima
ID uvida: Perf.Sandbox.Performance.Plug-ins.ExternalCall
Dodaci i prilagođene aktivnosti toka posla mogu da pristupe veb-uslugama (spoljnim krajnjim tačkama) putem HTTP i HTTPS protokola. Ako ove spoljne usluge rade sporo, sam dodatak će isteći ili će raditi sporo.
Motivacija
Ovaj uvid proverava performanse spoljnih krajnjih tačaka i otkriva dodatke u vašoj aplikaciji na koje utiču spori spoljni pozivi.
Način poboljšanja
- Postavite KeepAlive na netačno pri interakciji sa spoljnim hostovima u dodatnoj komponenti.
- Izričito podesite vremensko ograničenje kada upućujete spoljne pozive u dodatku.
Više informacija: Pristup spoljnim veb-uslugama (Microsoft Dataverse) – Power Apps | Microsoft Docs.
Prilagođavanje
Proizvođači mogu da izvrše mnoga različita prilagođavanja pomoću aplikacija zasnovanih na modelu, kao što su:
- Unos prilagođene JavaScript funkcije da biste omogućili događaje na klijentu.
- Kreiranje i primena dodataka koji se koriste za izvršavanje prilagođene logike.
- Definisanje i čuvanje prilagođene tabele i podataka.
- Definišite zavisne komponente i za prilagođene i standardne tabele, kao što su obrasci i pogledi.
Iz perspektive učinka, sva ova prilagođavanja mogu prouzrokovati loš odziv aplikacije u situacijama kada prilagođavanje ne prati najbolje prakse i preporuke. Proizvođači mogu pokrenuti uslugu za proveru rešenja da bi potvrdili svoja prilagođavanja tokom faze razvoja.
Sledeći uvidi takođe pružaju analitičke rezultate iz korisničkih podataka tokom izvršavanja vašeg prilagođavanja.
Tip poziva XML HTTP zahteva (XHR)
ID uvida: Perf.ModelDriven.Customization.Client.Script.XMLHttpRequestType
Sinhroni XMLHttpRequest pozivi mogu da izazovu ozbiljne probleme sa performansama krajnjih korisnika, posebno kada je mreža spora ili postoji više poziva koje treba uputiti. Pregledač se zamrzne i krajnji korisnik je frustriran kada ne može da klikne, pomiče ili komunicira sa stranicom.
Ovaj uvid otkriva da li postoje sinhrone metode i ukazuje na povezane performanse.
Motivacija
Sinhroni XHR pozivi sprečiće pregledač da obavlja više posla, jer pregledač mora sačekati da se sinhroni poziv završi, što dovodi do usporavanja ili potpunog zamrzavanja stranice.
Način poboljšanja
Preporučujemo vam da promenite najbolje metode pomenute u Odeljku sa podacima uvida od sinhronog do asinhronog. Više informacija: Turbo-punite svoje aplikacije zasnovane na modelu prelaskom sa sinhronih zahteva
Zastarele kontrole
ID uvida: Perf.Customization.Controls.Deprecated
Starije kontrole za aplikacije zasnovane na modelu kao što su Preklopnik, kontrola kalendara (V1), linearni klizač, radijalno dugme, lučno dugme, linearni merač; zajedno sa kontrolom pregleda veb-stranice, MultiSelectPicklistControl (V1) i oznakom prebacivanja su zastarele. Neke od ovih kontrola mogu se zameniti novim kontrolama, koje su više u skladu sa modernim vebom i mobilnim uređajima. Više informacija: Nove kontrole aplikacija zasnovanih na modelu, zastarevanje starih kontrola
Motivacija
Korišćenje zastarelih kontrola može dovesti do problema sa performansama, pouzdanošću i pristupačnošću. Štaviše, neka ograničenja u ovim zastarelim kontrolama su rešena novim kontrolama. Na primer, koriste se preklopna kontrola i kontrola kalendara (V2) Microsoft Fluent UI.
Način poboljšanja
- Koristite kontrolu uključivanja/isključivanja kao zamenu za Oznaku prebacivanja i Preklopnik.
- Koristite kontrolu kalendara (V2) kao zamenu za kontrolu kalendara (V1).
- Procenite druge zastarele kontrole da biste utvrdili da li su i dalje korisne u postojećim obrascima.
IMajte u vidu da postoji malo značajnih promena u dizajnu između zastarele verzije i novih kontrola.
Za više informacija o zastarjelim kontrolama idite na Aplikacije zasnovane na modela, zastarevanje kontrola.
Učinak za Sandbox – dominantne dodatne komponente
ID uvida: Perf.Sandbox.Performance.Plug-ins.Dominant
Ovaj uvid će nam pomoći da identifikujemo dominantne dodatne komponente, ili drugim rečima, one koje se najviše koriste. Takođe će naznačiti da li se bilo koja od dominantno korišćenih dodatnih komponenti izvršavala sporo sa vremenom izvršavanja dodatne komponente većim od 100 milisekundi u 95. percentilu. Ovaj uvid će navesti do tri dominantne dodatne komponente.
Motivacija
Spore dominantne dodatne komponente utiču na performanse. Ove dodatne komponente treba istražiti.
Način poboljšanja
Istražite dodatne komponente sa sporim performansama. Pogledajte najbolje prakse u vezi sa dodatnim komponentama i razvojem toka posla.
Da biste dalje istraživali spore dodatne komponente, možete podesiti Evidenciju praćenja dodatnih komponenti na Sve u vašem razvojnom ili testnom okruženju i odrediti gde je kašnjenje. Međutim, ne zaboravite da onemogućite podešavanje pre nego što krenete u produkciju. Više informacija: Praćenje i evidentiranje
Istražite dodatne komponente sa sporim performansama. Neki od razloga za spore dodatne komponente opisani su ovde:
- Povezani SQL upiti izvršavali su se sporo, pa se stoga vreme izvršenja dodatne komponente povećalo.
- Sledite princip jedinstvene odgovornosti za svoju dodatnu komponentu i ne pravite transakcije sa značajnim granicama transakcija.
- Dodatna komponenta možda upućuje neke spoljne pozive koji su spori.
- Logika dodatne komponente nije optimizovana za okruženja sa više nivoa. Proverite kôd.
Da biste dalje istraživali spore dodatne komponente, možete podesiti Evidenciju praćenja dodatnih komponenti na Sve u vašem razvojnom ili testnom okruženju i odrediti gde je kašnjenje. Ne zaboravite da onemogućite podešavanje pre nego što krenete u produkciju. Više informacija: Praćenje i evidentiranje
Sačuvan upit sa vodećim džoker znakom
ID uvida: Perf.ModelDriven.Customization.SavedQuery.LeadingWildCard
Vodeći džokeri su uslovi kao ili nije kao koji koriste džoker znak (%) na početku niske za pretragu. Primer loše napisanog zahteva je:
<fetch version="1.0" output-format="xml-platform" mapping="logical">
<entity name="account">
<attribute name="accountid" />
<attribute name="accountnumber" />
<filter type="and">
<condition attribute="accountnumber" operator="like" value="%124" />
</filter>
</entity>
</fetch>
Motivacija
Vodeći džoker znak (%) u sačuvanom upitu može prouzrokovati vremensko ograničenje upita ili njegovo sporo izvršavanje. Ovaj uvid ukazuje na takve spore sačuvane upite sa vodećim džoker znakovima.
Način poboljšanja
Izbegavajte korišćenje vodećih džoker znakova. U ključu za pretragu, oni su prevedeni u „sadrži“ u SQL serveru, što neće iskoristiti prednost pretraživanja indeksa, već će izvršiti skeniranje. Ako je potrebno koristiti vodeći džoker, ograničite obim pretraživanja uključivanjem drugih uslova. Imajte na umu da je u redu koristiti krajnje džoker znakove (%) na kraju niske za pretraživanje.
Konfigurisanje
Podešavanje evidencije praćenja dodatne komponente
ID uvida: Perf.Sandbox.Configuration.PluginTraceSettings
Proizvođači mogu da otklone greške u svojim dodatnim komponentama kroz evidencije praćenja dodatnih komponenti. Dataverse administratori mogu da podese dodatnu komponentu i prilagođeno praćenje aktivnosti toka posla na Isključeno, Izuzetak ili Sve.
Motivacija
Dnevnik praćenja dodatne komponente treba podesiti na Sve samo kada otklanjate greške ili dorađujete dodatnu komponentu. Veliki obim evidentiranja praćenja može prouzrokovati I/O preopterećenje na SQL serveru. Štaviše, brisanje dnevnika praćenja dodatne komponente može uzrokovati blokade ili čekanja sa zastoje SQL servera.
Način poboljšanja
Ako je ovo podešavanje u vašoj proizvodnoj instanci Sve, a obim evidencija koje generiše vaša dodatna komponenta je velik, razmislite o tome da ga promenite u Izuzetak.
Da biste promenili podešavanje, idite na karticu Podešavanja > Administracija > Postavke sistema > Podešavanje. Više informacija: Evidentiranje i praćenje
Mreža
Mrežne performanse
Kašnjenje i propusnost mreže su važni faktori koji utiču na iskustvo krajnjeg korisnika. Korisnici sa velikim kašnjenjem i malom propusnošću će verovatnije iskusiti spore performanse dok pristupaju objedinjenom interfejsu. Ovaj uvid nam govori koliko je korisnika na mreži sa lošim performansama i kakve su bile njihove performanse.
Motivacija
Loša mrežna konfiguracija će uticati na performanse aplikacije.
Način poboljšanja
Ako je na mreži mnogo korisnika, a performanse su loše, preporučujemo korisnicima da pređu na mrežu sa boljim performansama.