Înțelegerea perspectivelor (previzualizare)
[Acest subiect este documentație de prelansare și poate suferi modificări.]
Statisticile privind performanța distribuie statistici în următoarele categorii:
- Performanța generală
- Mediul clientului
- Model de utilizare
- Performanța paginii
- Particularizare
- Configurație
- Rețea Deoarece performanța unei aplicații ar putea fi afectată de diverși factori, statisticile privind performanța clasifică zonele pentru a verifica cât de mult se datorează cheltuielile generale ale performanței.
Performanța generală
Această perspectivă rezumă performanța generală a aplicației dvs. ca un rezumat executiv în Insight ID Perf.Summary.Overview.
În această perspectivă, puteți vedea performanța generală a aplicației dvs. pe baza severității.
- Critic: Indică performanțe slabe.
- Avertizare: Indică dacă performanța ar putea fi îmbunătățită.
- Informativ: Indică performanțe bune.
Cum să îmbunătățiți
Când vine timpul să optimizați aplicația, puteți analiza detaliile clientului, rețelei, categoriilor de personalizare, precum și inserturi, savedQeury și setări. Unele elemente care pot fi acționate pot fi derivate prin examinarea acestor informații.
Mediul clientului
Când utilizatorii experimentează o aplicație Power Apps pe dispozitivele lor, mai mulți factori pot afecta performanța, cum ar fi tipul de browser, versiunea browserului și specificațiile hardware-ului. În această secțiune, puteți vedea ce statistici verifică mediile clientului.
Tipul browserului
ID detaliu: Perf.Environment.Client.Browser.Type
Motivare
Anumite tipuri de browser web pot afecta performanța aplicației dvs. Utilizarea browserelor neacceptate sau non-moderne poate duce la performanțe lente. Această perspectivă oferă implicații privind performanța diferitelor browsere, în special a browserelor nerecomandate. De exemplu, Power Apps are perimată asistența Internet Explorer.
Cum să îmbunătățiți
Dacă aveți utilizatori pe browsere vechi, cum ar fi Internet Explorer, comutați la un browser modern bazat pe Chromium. Recomandăm utilizatorilor să ruleze un browser modern, cum ar fi Microsoft Edge sau Google Chrome.
Notă
Unele aplicații vechi care utilizează NPAPI vor funcționa numai cu Internet Explorer.
Versiune browser
ID detaliu: Perf.Environment.Client.Browser.Version
Motivare
Această perspectivă verifică câți utilizatori utilizează aplicația dvs. dintr-o versiune veche a unui browser. Chiar și atunci când utilizatorii rulează browsere moderne și nu tipuri de browser nerecomandate, cum ar fi Internet Explorer, versiunile mai vechi ale browserelor funcționează mai lent.
Cum să îmbunătățiți
Utilizatorii ar trebui să actualizeze în mod regulat browserul la ultima versiune. Clienții Enterprise pot aplica o politică de grup pentru a fi pe o anumită versiune. Întrucât Unified Service Desk (USD) folosește și setările implicite de browser ale computerului, necesită și verificarea tipului și versiunii implicite a browserului.
Cerințe minime de sistem
ID detaliu: Perf.Environment.Device.MimimumRequirements
Motivare
Această perspectivă verifică dacă mediul utilizatorului îndeplinește cerințele minime de sistem. Puteți verifica cerințele aplicației web pentru a vedea care sunt cerințele minime de sistem în funcție de tipul aplicației.
În general, unele activități precum redarea, scriptarea și descărcarea conținutului se desfășoară din partea clientului. Respectarea cerințelor minime de sistem este necesară pentru astfel de activități.
Cum să îmbunătățiți
Utilizatorii ar trebui să utilizeze hardware-ul care îndeplinește sau depășește cerințele minime de sistem pentru Power Apps.
Protocol HTTP
ID detaliu: Perf.Environment.Client.Browser.HttpProtocol
Motivare
Platforma Power Apps acceptă HTTP/2. Cu toate acestea, dacă aplicația dvs. folosește protocolul HTTP/1.1 pentru solicitări XMLHttpRequest (XHR) Power Apps, ar putea provoca performanțe lente datorită limitării concurente a cererilor cu protocolul HTTP/1.1.
Cum să îmbunătățiți
Dacă această perspectivă a identificat unii utilizatori care utilizează protocolul HTTP/1.1, vă recomandăm cu tărie ca clientul acestor utilizatori să accepte protocolul HTTP/2.
Mai multe configurații și infrastructura de rețea pot bloca protocolul HTTP/2, cum ar fi o rețea VPN, un server proxy sau setările opțiunilor de internet ale dispozitivului.
Utilizatorii pot verifica ce protocol a fost utilizat dintr-un instrument de dezvoltare inclus în browser. În figura de mai jos, apelurile de rețea au avut loc prin HTTP/2.
Dacă urmărirea protocolului de rețea indică HTTP/1.1, aceasta ar putea fi din cauza următoarelor:
- Setări Internet: Opțiunea de filă de Internet Windows Avansat din panoul de control cu opțiunile Utilizați HTTP2 și Utilizați TLS 1.2 nu sunt activate.
- VPN și proxy: Deși opțiunea Windows Internet este setată să utilizeze HTTP2 și TLS 1.2, browserul ar putea să se rezume atunci când un VPN sau un proxy nu acceptă protocoalele mai recente.
Model de utilizare
Această categorie analizează tipul de încărcare a paginii. O încărcare proaspătă a paginii redă pagina utilizând cache-uri și obiecte DOM existente, în timp ce o încărcare rece a paginii redă pagina prin descărcarea resurselor atunci când este necesar. Deși utilizatorii nu vor distinge tipul de încărcare a paginii, această perspectivă analizează și oferă recomandări în funcție de tipul de încărcare a paginii care apar pe client.
Tipul de încărcare a paginii
ID detaliu: Perf.Performance.PageLoadType
Motivare
Încărcările proaspete de pagini sunt mai rapide decât încărcările de pagini reci, deoarece resursele necesare se încarcă din cache-urile locale.
Notă
Când un utilizator deschide un formular dintr-o filă nouă sau din filă nouă dintr-un browser, acesta este considerat o încărcare de pagină rece. Când un utilizator deschide alte formulare în aplicație în fila activă a unui browser, acesta este considerat o încărcare de pagină proaspătă.
Cum să îmbunătățiți
Pentru a experimenta încărcări proaspete de pagină pentru performanțe mai rapide, minimizați deschiderea de file noi sau ferestre de browser. Încercați să păstrați activitățile într-o singură filă în loc să deschideți filele noi sau ferestrele browserului. De asemenea, vă recomandăm să nu rulați browserul în modul InPrivate sau incognito.
Performanța paginii
Multe aplicații proiectate pe bază de model de primă parte sunt formate dintr-un tablou de bord, vizualizări (EntityList) și formular atunci când vine vorba de tipul de pagină. În mod implicit, utilizatorii încarcă un tablou de bord, deși producătorii de aplicații și administratorii pot modifica acest lucru. Dacă un tablou de bord conține multe diagrame și dale, ar putea cauza încărcarea lentă a tabloului de bord. În mod similar, dacă EntityList și formularele sunt personalizate pentru a adăuga multe coloane și afișa multe înregistrări, se poate provoca încărcarea lentă a paginii. Prin urmare, verificarea performanței pe pagină și pe tabel poate fi benefică, deoarece performanța încărcării paginii poate avea diferite cauze principale.
În această secțiune, puteți vedea mai multe informații despre performanța paginii.
Tablouri de bord lente
ID detaliu: Perf.ModelDriven.Page.Dashboard.SlowSQLQuery
Motivare
Interogările SQL lente sau utilizarea prea multor diagrame și dale într-un tablou de bord pot provoca performanțe slabe ale tabloului de bord. Această perspectivă indică tablourile de bord care sunt afectate de interogări SQL lente. Atunci când această perspectivă este înregistrată, panoul Detalii include ID-ul tabloului de bord pentru fiecare tablou de bord inclus în perspectivă.
Cum să îmbunătățiți
Iată cum să căutați numele tabloului de bord folosind ID-ul tabloului de bord. Apoi, puteți stabili ce tablouri de bord să luați în considerare pentru reproiectare.
Accesați aplicația dvs. pe bază de model, cum ar fi https://contoso.crm.dynamics.com.
Modificați adresa URL așa cum se arată în acest exemplu (https://contoso.dynamics.com/api/data/v9.1/systemforms[DashboardId]/nume) prin anexare api/data/v9.1/systemforms[DashboardId]/name la adresa URL a aplicației.
Veți primi o cerere OData similară celei de mai jos. Tabloul de bord al agentului afișat mai jos reprezintă numele ușor de utilizat al ID-ului tabloului de bord dat.
{"@odata.context":https://contoso.crm.dynamics.com/api/data/v9.1/$metadata#systemforms(2ff4a8cf-378b-e811-a964-000d3a30dc0a)/name,"value":"Contoso - Agent Dashboard"}
Inserturi sincrone cu apeluri externe lente
ID detaliu: Perf.Sandbox.Performance.Plug-ins.ExternalCall
Inserturile și activitățile de flux de lucru personalizate pot accesa serviciile web (puncte finale externe) prin protocoale HTTP și HTTPS. Dacă aceste servicii externe funcționează lent, insertul în sine va expira sau va funcționa lent.
Motivare
Această perspectivă verifică performanța punctelor finale externe și detectează inserturile din aplicația dvs. care sunt afectate de apelurile externe lente.
Cum să îmbunătățiți
- Setați KeepAlive ca fals atunci când se interacționează cu gazde externe într-un insert.
- Setați în mod explicit Perioadă de expirare când efectuați apeluri externe într-un insert.
Informații suplimentare: Accesați servicii web externe (Microsoft Dataverse) - Power Apps | Microsoft Docs.
Particularizare
Creatorii pot face multe personalizări diferite cu aplicații pe bază de modele, cum ar fi:
- Ingerează funcții JavaScript personalizate pentru a activa evenimentele pe client.
- Construiesc și implementează inserturi utilizate pentru a executa logică personalizată.
- Definesc și stochează tabele și date personalizate.
- Definesc componente dependente atât pentru tabele personalizate, cât și pentru tabele standard, cum ar fi formulare și vizualizări.
Din perspectiva performanței, toate aceste personalizări ar putea provoca un răspuns slab al aplicației în situații în care personalizarea nu respectă cele mai bune practici și recomandări. Creatorii pot rula Verificare soluție pentru a-și valida personalizările în timpul fazei de dezvoltare.
Următoarele informații oferă, de asemenea, rezultate analitice din datele de utilizare ale personalizării dvs. în timpul rulării.
Tipul de apel XML solicitare HTTP (XHR)
ID detaliu: Perf.ModelDriven.Customization.Client.Script.XMLHttpRequestType
Apelurile sincrone XMLHttpRequest pot provoca probleme grave de performanță pentru utilizatorii finali, mai ales atunci când rețeaua este lentă sau există mai multe apeluri care trebuie efectuate. Browserul se blochează și utilizatorul final este frustrat când nu poate face clic, derula sau interacționa cu pagina.
Această perspectivă arată dacă există metode sincrone și indică performanța aferentă.
Motivare
Apelurile XHR sincrone vor împiedica browserul să efectueze mai multe activități, deoarece browserul trebuie să aștepte finalizarea apelului sincron, determinând încetinirea sau înghețarea completă a paginii.
Cum să îmbunătățiți
Vă recomandăm să modificați metodele de sus menționate în Secțiunea de date a perspectivei de la sincron la asincron. Mai multe informații: Turbocompresor al aplicațiilor pe bază de model, trecând de la solicitările sincrone
Controale perimate
ID detaliu: Perf.Customization.Controls.Deprecated
Unele controale mai vechi pentru aplicații pe bază de model precum Întrerupător comutare, Control calendar (V1), Glisor linear, Buton rotativ radial, Buton rotativ arc, Indicator linear; împreună cu controlul de previzualizare a site-ului web, MultiSelectPicklistControl (V1) și eticheta de comutare sunt perimate. Unele dintre aceste controale pot fi înlocuite cu noile controale, care sunt mai mult în concordanță cu webul și mobilele moderne. Mai multe informații: Noi controale pentru aplicații pe bază de model, deprecierea controalelor vechi
Motivare
Utilizarea controalelor învechite poate cauza probleme de performanță, fiabilitate și accesibilitate. Mai mult, unele dintre limitările acestor controale perimate au fost rezolvate cu noile controale. De exemplu, se utilizează controlul Comutare și Control calendar (V2) Microsoft Fluent UI.
Cum să îmbunătățiți
- Utilizați comutatorul Toggle ca înlocuitor pentru Flip Label și Flip Switch.
- Folosiți Control calendar (V2) ca înlocuitor pentru Control calendar (V1).
- Evaluați alte controale perimate pentru a determina dacă acestea sunt încă utile în cadrul formularelor existente.
Observați că există puține modificări semnificative ale designului între versiunea perimată și noile controale.
Pentru mai multe informații despre controalele perimate, accesați Aplicația pe bază de model controlează perimarea.
Performanță sandbox - inserturi dominante
ID detaliu: Perf.Sandbox.Performance.Plug-ins.Dominant
Această perspectivă ne va ajuta să identificăm insertul dominant sau, cu alte cuvinte, cel mai utilizat. De asemenea, va indica dacă vreunul dintre inserturile utilizate în mod dominant a funcționat lent, cu un timp de execuție al insertului mai mare de 100 de milisecunde în a 95-a percentilă. Această perspectivă va enumera până la trei inserturi dominante.
Motivare
Inserturile dominante lente afectează performanța. Aceste inserturi ar trebui investigate.
Cum să îmbunătățiți
Investigați inserturi cu performanță lentă. Verificați cele mai bune practici privind insertul și dezvoltarea fluxului de lucru.
Pentru a investiga în continuare insertul lent, puteți seta setări Jurnal de urmărire insert pentru Toate în mediul dvs. de dezvoltare sau de testare și stabiliți unde se produce întârzierea. Cu toate acestea, nu uitați să dezactivați setarea înainte de a merge la producție. Mai multe informații: Urmărirea și înregistrarea în jurnal
Investigați inserturi cu performanță lentă. Unele dintre motivele pentru inserturile lente sunt descrise aici:
- Interogările SQL asociate s-au desfășurat lent, prin urmare, timpul de execuție al insertului a crescut.
- Respectați principiul responsabilității unice pentru insertul dvs. și nu efectuați tranzacții cu limite semnificative ale tranzacțiilor.
- Insertul poate efectua unele apeluri externe, care sunt lente.
- Logica insertului nu este optimizată pentru medii multi-threading. Verificați codul dvs.
Pentru a investiga în continuare insertul lent, puteți seta setări Jurnal de urmărire insert pentru Toate în mediul dvs. de dezvoltare sau de testare și stabiliți unde se produce întârzierea. Nu uitați să dezactivați setarea înainte de a merge la producție. Mai multe informații: Urmărirea și înregistrarea în jurnal
Interogare salvată cu wildcard principal
ID detaliu: Perf.ModelDriven.Customization.SavedQuery.LeadingWildCard
Wildcardurile principale sunt condiții ca sau nu ca care utilizează un wildcard (%) la începutul unui șir de căutare. Un exemplu de solicitare slab scrisă este:
<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>
Motivare
Un caracter wildcard principal (%) într-o interogare salvată poate determina interogarea să expire sau să funcționeze lent. Această perspectivă indică astfel de interogări salvate lent cu wildcarduri principale.
Cum să îmbunătățiți
Evitați să folosiți wildcarduri principale. În cheia de căutare, acestea sunt traduse în „conține” în SQL Server, care nu va profita de căutarea indexului, dar va face o scanare. Dacă este necesar să utilizați un wildcard principal, limitați domeniul de căutare prin includerea altor condiții. Rețineți că este ok să folosiți wildcarduri finale (%) la sfârșitul șirurilor de căutare.
Configurație
Setare jurnal de urmărire insert
ID detaliu: Perf.Sandbox.Configuration.PluginTraceSettings
Producătorii își pot depana inserturile prin jurnalele de urmărire ale inserturilor. Administratorii Dataverse pot seta insertul și urmărirea personalizată de activitate flux de lucru la Dezactivat, Excepție sau Toate.
Motivare
Jurnalul de urmărire a insertului trebuie setat la Toate numai atunci când depanați sau modificați insertul. Volumul mare de înregistrare a urmelor poate provoca cheltuieli I/O cu SQL Server. Mai mult, ștergerea jurnalului de urmărire a insertului poate provoca blocări sau așteptări cu SQL Server.
Cum să îmbunătățiți
În instanța de producție dacă această setare este Toate iar volumul de jurnale generate de insertul dvs. este mare, atunci luați în considerare modificarea acestuia la Excepție.
Pentru a schimba setarea, accesați fila Setări > Administrare > Setările sistemului > Personalizare. Mai multe informații: Înregistrare și urmărire
Rețea
Performanța rețelei
Latența și capacitatea de rețea sunt factori importanți care afectează experiența utilizatorului final. Utilizatorii cu latență ridicată și debit redus vor experimenta, probabil, performanțe lente în timp ce accesează Interfața unificată. Această perspectivă ne arată câți utilizatori se află într-o rețea cu performanțe slabe și cum a fost performanța lor.
Motivare
Configurarea slabă a rețelei va afecta performanța aplicației.
Cum să îmbunătățiți
Dacă există mulți utilizatori în rețea și performanța este slabă, le recomandăm utilizatorilor să treacă la o rețea mai performantă.