Pastaba.
Prieigai prie šio puslapio reikalingas įgaliojimas. Galite bandyti prisijungti arba pakeisti katalogus.
Prieigai prie šio puslapio reikalingas įgaliojimas. Galite bandyti pakeisti katalogus.
Taikoma šiai **gerai suplanuoto našumo efektyvumo kontrolinio sąrašo** rekomendacijai: Power Platform
| PE:06 | Naudokite našią logiką ir užtikrinkite, kad ji perkeltų atsakomybę platformai. Logiką naudokite tik pagal paskirtį ir tik tada, kai tai būtina. |
|---|
Šiame vadove aprašomos rekomendacijos, kaip optimizuoti kodo ir infrastruktūros našumą. Norėdami optimizuoti savo kodą ir infrastruktūrą, komponentus turėtumėte naudoti tik pagal jų pagrindinę paskirtį ir tik tada, kai to reikia. Kai per daug naudojate kodą ir infrastruktūrą, tai sukuria nereikalingą išteklių eikvojimą, kliūtis ir lėtus atsakymus. Norint kompensuoti šiuos neefektyvumus, reikia pridėti daugiau išteklių toms pačioms užduotims atlikti.
Apibrėžimai
| Terminas | Apibrėžtis |
|---|---|
| Vienalaikiškumas | Kai vienu metu, bet nebūtinai tiksliai tuo pačiu metu, atliekamos kelios užduotys ar procesai. |
| Paralelizmas | Kai vienu metu atliekamos kelios užduotys ar procesai. |
Pagrindinės projektavimo strategijos
Logikos ir infrastruktūros optimizavimas reiškia logikos ir ją palaikančios infrastruktūros tikslų derinimą, siekiant pagerinti našumą. Tam reikalinga naši logika, kuri greitai atlieka užduotis ir nešvaisto išteklių. Tam reikalinga gerai suprojektuota infrastruktūra, kuri būtų supaprastinta, kad būtų išvengta nereikalingo sudėtingumo. Darbo krūvis turėtų naudoti platformos teikiamas galimybes. Toks metodas padeda užtikrinti, kad ir logika, ir infrastruktūra būtų naudojamos pirmiausia pagrindiniams tikslams ir tik tada, kai to reikia.
Optimizuokite logikos našumą
Norint optimizuoti logikos našumą, reikia modifikuoti kodą, kad sumažėtų išteklių naudojimas, sutrumpėtų vykdymo laikas ir padidėtų našumas. Galite modifikuoti logiką, kad pagerintumėte programos ar srauto efektyvumą ir greitį. Neslėpkite našumo problemų grubia jėga. „Brute force“ reiškia skaičiavimo išteklių pridėjimą siekiant kompensuoti kodo našumą, pavyzdžiui, pridedant papildomų pajėgumų, užuot sprendžiant šaltinio problemą. Jums reikia išspręsti našumo problemas optimizavimo būdu. Optimizuojant logikos našumą, galima maksimaliai išnaudoti sistemos išteklius, pagerinti atsako laiką, sumažinti delsą ir pagerinti naudotojo patirtį.
Instrumentuokite savo logiką
Instrumentavimo logika reiškia pasirinktinio įvykių registravimo pridėjimo praktiką, siekiant rinkti duomenis ir stebėti logikos našumą vykdymo metu. Loginiai instrumentai leidžia kūrėjams rinkti informaciją apie pagrindinius rodiklius, tokius kaip vykdymo laikas. Naudodami loginius instrumentus, kūrėjai gali gauti įžvalgų apie logikos aktualijas, nustatyti našumo kliūtis ir optimizuoti logiką, kad būtų pasiektas geresnis našumas.
Idealiu atveju loginę analizę reikėtų atlikti ankstyvajame programinės įrangos kūrimo gyvavimo ciklo etape. Kuo anksčiau pastebėsite loginę problemą, tuo pigiau ją ištaisysite. Norite automatizuoti kuo daugiau šios loginės analizės. Naudokite dinaminio ir statinio kodo analizės įrankius, kad sumažintumėte rankinio darbo sąnaudas. Pavyzdžiui, **Srauto tikrintuvas** gali paryškinti logiką, kuri neturėtų būti naši, pvz., užklausą, kurioje nenurodyti filtro kriterijai. ... Tačiau nepamirškite, kad šis testavimas vis dar yra gamybos simuliacija. Gamyba suteikia aiškiausią loginio optimizavimo supratimą.
Kompromisas: Loginio stebėjimo įrankiai greičiausiai padidins išlaidas.
Nustatykite karštus kelius
Instrumentuodami savo logiką, galite išmatuoti išteklių sunaudojimą skirtingiems loginiams keliams. Šie matavimai padeda nustatyti karštuosius takus. Karšti keliai daro didelę įtaką našumui ir išteklių naudojimui. Tai yra kritinės arba dažnai vykdomos programos dalys, kurioms reikalingas didelis našumas ir maža delsa.
Norėdami nustatyti kodo karštuosius kelius, apsvarstykite šiuos veiksmus:
Analizuoti vykdymo laiko duomenis: rinkti vykdymo laiko duomenis ir juos analizuoti, siekiant nustatyti logikos sritis, kurios sunaudoja daugiausiai laiko. Ieškokite modelių ar logikos dalių, kurios dažnai vykdomos arba kurių užbaigimas užtrunka ilgai.
Našumo matavimas: naudokite profiliavimo įrankius arba našumo testavimo sistemas, kad išmatuotumėte skirtingų loginių kelių vykdymo laiką ir išteklių sunaudojimą. Šis procesas padeda nustatyti kliūtis ir sritis, kurias reikia tobulinti. Pavyzdžiui, galite naudoti Monitor in Power Apps , kad geriau suprastumėte, kaip veikia jūsų programos įvykiai ir formulės, ir galėtumėte pagerinti našumą.
Atsižvelkite į verslo logiką ir naudotojo poveikį: įvertinkite skirtingų loginių kelių svarbą pagal jų aktualumą programos funkcionalumui arba svarbiausioms verslo operacijoms. Nustatykite, kurie loginiai keliai yra svarbiausi siekiant suteikti vertę vartotojams arba atitikti našumo reikalavimus.
Optimizavimo logika
Logikos optimizavimas – tai logikos struktūros ir dizaino tobulinimas, siekiant atlikti užduotis su mažiau išteklių. Patobulinta logika sumažina nereikalingų operacijų skaičių. Tai užtikrina greitesnį vykdymą sunaudojant mažiau išteklių. Loginiame kelyje turėtumėte pašalinti visas nereikalingas operacijas, kurios gali turėti įtakos našumui. Teikite pirmenybę karštų kelių optimizavimui, kad pasiektumėte didžiausią našumo efektyvumą.
Norėdami optimizuoti logiką, apsvarstykite šias strategijas:
Pašalinkite nereikalingus funkcijų iškvietimus Peržiūrėkite savo logiką ir nustatykite visas funkcijas, kurios nėra būtinos norimam funkcionalumui ir gali neigiamai paveikti našumą. Pavyzdžiui, jei funkcijos iškvietimas atlieka anksčiau kode atliktą patvirtinimą, galite pašalinti nereikalingą patvirtinimo funkcijos iškvietimą.
Sumažinkite registravimo operacijas Registravimas gali būti naudingas derinant ir analizuojant, tačiau per didelis registravimas gali turėti įtakos našumui. Įvertinkite kiekvienos registravimo operacijos būtinybę ir pašalinkite visus nereikalingus registravimo iškvietimus, kurie nėra svarbūs našumo analizei. Gera praktika yra leisti sistemai įjungti ir išjungti registravimą, kad būtų lengviau derinti, tačiau nesukeliant našumo problemų.
Optimizuokite ciklus ir sąlygines funkcijas Išanalizuokite savo logikos ciklus ir sąlygines operacijas ir nustatykite visas nereikalingas iteracijas ar sąlygas, kurias galima pašalinti. Šių struktūrų supaprastinimas ir optimizavimas gali pagerinti jūsų kodo našumą. Sumažinkite funkcijų iškvietimus cikluose ir pašalinkite nereikalingus skaičiavimus. Apsvarstykite skaičiavimų perkėlimą už ciklo ribų.
Sumažinkite nereikalingą duomenų apdorojimą Peržiūrėkite savo logiką, ar nėra nereikalingų duomenų apdorojimo operacijų, pvz., pasikartojančių skaičiavimų ar transformacijų. Pašalinkite šias nereikalingas operacijas, kad pagerintumėte savo logikos efektyvumą. Pavyzdžiui, naudokite Dataverse apskaičiuoti stulpeliai, apibendrinimo laukai arba Power Fx stulpeliai užuot apskaičiavus reikšmę kode ir išsaugojus ją išsaugojimo operacijos metu.
Optimizuokite duomenų struktūras. Norint efektyviai saugoti ir gauti duomenis, pasirinkite tinkamas duomenų struktūras ir tik reikiamus duomenų stulpelius. Pasirinkite geriausią duomenų struktūrą konkrečiai problemai. Tinkama duomenų struktūra pagerina programos našumą.
Sumažinkite tinklo užklausas: jei jūsų logika apima tinklo užklausų teikimą (pvz., naudojant jungties veiksmą), sumažinkite užklausų skaičių ir optimizuokite jų naudojimą. Jei įmanoma, siųskite paketines užklausas ir venkite nereikalingų siuntimų pirmyn ir atgal, kad pagerintumėte našumą.
Sumažinkite duomenų struktūros dydį: peržiūrėkite duomenų reikalavimus ir pašalinkite visus nereikalingus laukus ar ypatybes. Optimizuokite atminties naudojimą pasirinkdami tinkamus duomenų tipus ir efektyviai pakuodami duomenis.
Dirbkite asinchroniškai: įvertinkite, ar pagal jūsų logiką darbą būtų galima atlikti asinchroniškai, o ne sinchroniškai. Pavyzdžiui, užuot atlikę operaciją tiesiogiai, apsvarstykite galimybę įdiegti srautą, kad darbas būtų apdorotas asinchroniškai. Power Automate
Konfigūruokite prieš tinkindami. Jei įmanoma, naudokite standartinius programos komponentus. Tokie pritaikymai kaip papildiniai ir „JavaScript“ gali turėti įtakos našumui.
Sumažinkite valdiklius. Formose rodykite tik tuos laukus, kurių jums reikia – per daug laukų gali užgriozdinti vartotojo sąsają ir paveikti našumą. Sumažinkite valdiklių skaičių komandų juostoje, drobės programoje arba pasirinktiniame puslapyje. Venkite įdėti galerijas į vieną galeriją arba pridėti prie jos per daug komponentų.
Optimizuokite duomenų užklausas. Įkelkite tik tuos duomenis, kurių jums reikia programoje arba sraute. Naudokite serverio rodinius, kad iš anksto filtruotumėte duomenis ir susiaurintumėte su užklausa susijusius duomenis.
Peržiūrėkite našumo rekomendacijas, skirtas konkrečiai produktui, su kuriuo dirbate. Power Platform Įvertinkite savo logiką pagal šias rekomendacijas, kad nustatytumėte sritis, kurias reikia tobulinti.
Sužinokite daugiau apie "Power Automate" debesies srauto kodavimo gaires, "Power Apps" kodavimo gaires ir "Power Automate" darbalaukio srauto kodavimo gaires , kad optimizuotumėte logiką.
Arbatpinigiai
Norėdami peržiūrėti kodą, naudokite **„Power CAT Toolkit**. ... Į įrankių rinkinį įtrauktos daugelis šioje dokumentacijoje pateiktų kodavimo gairių, užtikrinant, kad jūsų sprendimai būtų efektyvūs ir lengvai prižiūrimi. Įrankių rinkinys automatiškai pažymi visus šablonus, kurie neatitinka šių geriausių praktikų, kad galėtumėte spręsti galimas problemas ankstyvoje kūrimo proceso stadijoje. Toks iniciatyvus požiūris pagerina jūsų kodo kokybę ir padeda supaprastinti peržiūros procesą, todėl lengviau išlaikyti aukštus standartus visuose jūsų projektuose. „Power CAT Toolkit“ integravimas į jūsų kūrimo darbo eigą užtikrina, kad jūsų sprendimai būtų sukurti ant tvirto pagrindo ir užtikrintų patikimesnius bei pritaikomus sprendimus.
Kompromisas: Logikos ir karštųjų kelių optimizavimui reikia patirties. Loginių neefektyvumų nustatymas yra subjektyvus ir gali pareikalauti aukštos kvalifikacijos specialistų, kuriuos gali tekti pasitelkti atliekant kitas užduotis.
Naudokite lygiagretumą ir lygiagretumą
Lygiagretumo ir lygiagretumo naudojimas apima kelių užduočių ar procesų vykdymą vienu metu arba persidengiančiu būdu, siekiant efektyviai naudoti skaičiavimo išteklius. Šie metodai padidina bendrą pralaidumą ir užduočių, kurias gali apdoroti darbo krūvis, skaičių. Kai vykdote užduotis vienu metu arba lygiagrečiai, tai gali sutrumpinti programos veikimo laiką ir padidinti atsako laiką.
Lygiagretumas ir lygiagretumas efektyviai paskirsto darbo krūvį tarp skaičiavimo išteklių. Didinant lygiagretumą arba lygiagretumą, atsižvelkite į poveikį kitoms sistemoms, nes galite viršyti jų ribas. Pavyzdžiui, lygiagretus srauto ciklas, apdorojantis kiekvieną elementą vienu metu, gali viršyti ciklo logikoje naudojamos jungties užklausų ribas. Power Automate
Naudokite paralelizmą. Lygiagretumas yra sistemos gebėjimas vienu metu paleisti kelias užduotis ar procesus, naudojant kelis skaičiavimo išteklius. Lygiagretumas padalija darbo krūvį į mažesnes užduotis, kurios vykdomos lygiagrečiai. Kai logika vykdoma lygiagrečiai, našumas pagerėja, nes darbo krūvis paskirstomas kelioms šakoms.
Naudokite lygiagretumą. Lygiagretumas yra sistemos gebėjimas vykdyti kelias užduotis ar procesus. Lygiagretumas leidžia skirtingoms darbo krūvio dalims atlikti pažangą nepriklausomai, o tai gali pagerinti bendrą našumą.
Lygiagretus vykdymas: Lygiagretus vykdymas leidžia tai pačiai logikai veikti vienu metu. Vienalaikio vykdymo apribojimas vienu metu gali turėti logikos serializavimo efektą, dėl kurio vienu metu apdorojamas vienas elementas. Kontroliuojant vienu metu vykdomų darbo krūvio elementų kiekį, galima valdyti išteklių naudojimą apdorojimo metu. Pavyzdžiui, srauto ciklus galima sukonfigūruoti taip, kad jie apdorotų kelis veiksmus lygiagrečiai, naudojant savybę „Concurrent Control“. Power Automate
Pastaba.
Prieš įjungdami lygiagretumą, atminkite, kad tai reiškia, jog vienu metu bus atliekami keli veiksmai – jei duomenis rašote kaip ciklo dalį, įsitikinkite, kad duomenų paskirties vieta gali apdoroti vienalaikes užklausas.
Eilės: Eilė yra saugojimo buferis, esantis tarp užklausos pateikiančio komponento (gamintojo) ir apdorojimo komponento (vartotojo). Vienoje eilėje gali būti keli vartotojai. Didėjant užduočių skaičiui, turėtumėte pritaikyti vartotojus prie paklausos. Gamintojas sudeda užduotis į eilę. Eilėje užduotys saugomos tol, kol vartotojas turi pajėgumų. Eilė dažnai yra geriausias būdas perduoti darbą apdorojimo paslaugai, kuri patiria didžiausią paklausą. Daugiau informacijos žr. Eilėmis pagrįstas apkrovos išlyginimo modelis ir Saugojimo eilės ir paslaugų magistralės eilės.
Optimizuokite foninius darbus
Daugeliui programų reikalingos foninės užduotys, kurios veikia nepriklausomai nuo vartotojo sąsajos. Programa gali pradėti užduotį ir toliau apdoroti interaktyvias vartotojų užklausas. Foninių užduočių pavyzdžiai: paketinės užduotys, procesoriaus apkrovą reikalaujančios užduotys ir ilgai trunkantys procesai, pvz., darbo eigos. Foninės užduotys neturėtų blokuoti programos arba sukelti neatitikimų dėl uždelsto veikimo, kai sistema yra apkrauta. Daugiau informacijos apie foninių užduočių optimizavimą žr. Rekomendacijos, kaip kurti foninius darbus.
Power Platform palengvinimas
Instrumentavimo kodas Kuriant drobės programas, siekiant padidinti programos efektyvumą, reikėtų naudoti našumo šablonus, o vengti antišablonų. Daugiau informacijos žr. „Performant“ kūrimo apžvalga Power Apps. Naudokite **Monitor**, **in**, **norėdami diagnozuoti ir šalinti našumo problemas kūrimo metu.** Power Apps
Įsitraukimo ir rezultatų vertinimas: Kuriant agentus, pokalbių įsitraukimo ir rezultatų stebėjimas yra būtinas norint įvertinti agentų našumo rodiklius ir atrasti tobulintinas sritis.
Kodo logikos optimizavimas: Naudodami sprendimų tikrinimo funkciją , galite atlikti išsamią statinę savo sprendimų analizę pagal geriausios praktikos taisyklių rinkinį ir greitai nustatyti probleminius modelius. Naudodami srauto tikrintuvą , galite gauti įžvalgų apie tai, kurios jūsų srauto įgyvendinimo sritys kelia našumo riziką.
Lygiagretumo ir paralelizmo naudojimas: Power Automate debesų srautai palaiko lygiagretumą cikluose ir paleidikliuose. Atminkite, kad taikomi lygiagretumo, ciklinio veikimo ir išsiuntimo iš paketų apribojimai , kurie yra pagrįsti jūsų našumo profiliu. Power Apps palaikyti lygiagretumą naudojant funkciją **Concurrent**. ...
Našumo optimizavimas Dataverse :suteikia išplečiamą sistemą, leidžiančią kūrėjams kurti itin pritaikytas ir pritaikytas patirtis. Microsoft Dataverse Kai tinkinate, plečiate arba integruojate su Dataverse, atkreipkite dėmesį į nustatytas gaires ir geriausią praktiką. Žr. Geriausia praktika ir gairės naudojant Microsoft Dataverse.
Susijusi informacija
- Sprendimų našumo valdymas
- Lygiagretumo, ciklų ir išsiuntimo iš paketų apribojimai Power Automate
- Konkrečiam produktui skirtos gairės, kaip optimizuoti „Dynamics 365“ našumą
- Klientų įtraukimo programų našumo derinimas ir optimizavimas
- Našios kūrimo apžvalga Power Apps
- Monitoriaus apžvalga
- Pagerinkite komponentų našumą, stabilumą ir patikimumą naudodami sprendimų tikrintuvą
Veiklos efektyvumo kontrolinis sąrašas
Žr. visą rekomendacijų rinkinį.