Î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ă

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.

Exemplu de apeluri de rețea 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.

  1. Accesați aplicația dvs. pe bază de model, cum ar fi https://contoso.crm.dynamics.com.

  2. 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.

  3. 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

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.

Setare jurnal de urmărire insert.

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ă.

Consultați și

Ce sunt informațiile despre performanță?