Aanbevelingen voor continue prestatie-optimalisatie
Van toepassing op deze aanbeveling voor de controlelijst voor prestatie-efficiëntie van Power Platform Well-Architected Framework:
PE:10 | Optimaliseer voortdurend de prestaties. Concentreer u op componenten waarvan de prestaties in de loop van de tijd verslechteren, zoals databases en netwerkfuncties. |
---|
In deze handleiding worden de aanbevelingen voor continue prestatie-optimalisatie beschreven. Continue prestatie-optimalisatie is het proces van het voortdurend bewaken, analyseren en verbeteren van de prestatie-efficiëntie. Prestatieoptimalisatie moet een doorlopende activiteit zijn gedurende de hele levensduur van de workload. De werklastprestaties kunnen in de loop van de tijd afnemen of extreem worden. Factoren waarmee u rekening moet houden, zijn onder meer veranderingen in gebruikspatronen, een toename van de hoeveelheid opgeslagen gegevens, vraag, functies en technische schuld.
Definities
Term | Definitie |
---|---|
Technische schuld | De opgebouwde inefficiënties, suboptimale ontwerpkeuzes of opzettelijk genomen shortcuts tijdens het ontwikkelingsproces om code sneller te kunnen leveren. |
TTL | Een mechanisme dat een vervaldatum voor gegevens instelt. |
Belangrijke ontwerpstrategieën
Prestatie-efficiëntie wordt bereikt wanneer de werklastcapaciteit is afgestemd op het daadwerkelijke gebruik. Een workload die te hoog presteert, is net zo problematisch als een die te laag presteert. De afwegingen verschillen. Overprestaties hebben invloed op de kostenoptimalisatie. Slechte prestaties hebben gevolgen voor gebruikers. De sleutel tot prestatie-efficiëntie is het monitoren, aanpassen en testen in de loop van de tijd. U moet de prestatiegegevens regelmatig evalueren en indien nodig aanpassingen doorvoeren om ervoor te zorgen dat de werklast efficiënt is. Om de prestatiedoelen te behalen, moeten alle wijzigingen vóór en na de implementatie worden getest.
Ontwikkel een prestatiegerichte cultuur
Een prestatiegerichte cultuur is een omgeving waarin voortdurende verbetering wordt verwacht en het team leert van de productie. Voor prestatieoptimalisatie zijn gespecialiseerde vaardigheden nodig. Werklastteams hebben de juiste vaardigheden en mentaliteit nodig om hun prestaties te optimaliseren en zo aan de toenemende en afnemende vraag te voldoen. U moet ook tijd vrijmaken voor de ondersteuning van de vereiste monitoring en het verhelpen van prestatieproblemen zodra deze zich voordoen. Deze teams hebben duidelijke verwachtingen nodig. Prestatiedoelstellingen, basislijnen en afwijkingsdrempels (hoe ver van de basislijn is acceptabel) moeten bijvoorbeeld goed zichtbaar en openbaar zijn.
Afweging: voor voortdurende optimalisatie van prestaties is een team nodig dat over de juiste vaardigheden en tijd beschikt om prestatieproblemen te ontdekken en op te lossen. Het inzetten van personeel voor prestaties brengt operationele kosten met zich mee. Als u over beperkte personele middelen beschikt, kan voortdurende prestatieoptimalisatie tijd kosten die u niet aan andere operationele taken kunt besteden.
Evalueer nieuwe platformfuncties
Bij het evalueren van nieuwe platformfuncties worden de nieuwe functionaliteiten en functies onderzocht die de prestatie-efficiëntie kunnen verbeteren, zoals geoptimaliseerde manieren om gegevens op te vragen, moderne besturingselementen en cachemechanismen. Nieuwe platformfuncties kunnen mogelijkheden bieden voor het verbeteren van de prestatie-efficiëntie. Blijf op de hoogte van de functies van het platform, zodat u altijd gebruikmaakt van de nieuwste innovaties en best practices. Houd de feedback en prestatiegegevens van deze nieuwe toevoegingen voortdurend in de gaten om uw aanpak te verfijnen.
Geef prioriteit aan optimalisatie-inspanningen
Proactief optimaliseren van prestaties betekent dat er maatregelen worden genomen om de prestaties van de werklast te verbeteren en te optimaliseren voordat er prestatieproblemen ontstaan. Bij proactieve maatregelen worden mogelijke knelpunten geïdentificeerd, prestatiegegevens bewaakt en optimalisaties doorgevoerd om ervoor te zorgen dat de werklast efficiënt verloopt en voldoet aan de gewenste prestatiedoelen. Op basis van de analyse van verslechterende componenten, kritieke stromen en technische schuld kunt u prestatieoptimalisaties implementeren die specifiek zijn voor elk gebied. Verbeteringen kunnen bestaan uit wijzigingen in de code, aanpassingen aan de infrastructuur of configuratie-updates.
Geef prioriteit aan verslechterende componenten
Naarmate de werklast evolueert en gebruikspatronen veranderen, hebben deze wijzigingen vaak invloed op de prestaties van afzonderlijke componenten in de werklast. Meer gegevens in databases kunnen leiden tot langere query-uitvoeringstijden en trager ophalen van gegevens. Veranderingen in gebruikspatronen kunnen leiden tot een suboptimaal queryontwerp. Query's die ooit efficiënt waren, kunnen inefficiënt worden naarmate de werklast toeneemt. Inefficiënte query's kunnen te veel bronnen verbruiken en de databaseprestaties verslechteren.
Het is belangrijk om voortdurend te streven naar het optimaliseren van de prestaties van componenten waarvan de prestaties na verloop van tijd afnemen. Proactief prestatieproblemen in uw werklast identificeren en aanpakken. Door prioriteit te geven aan componenten waarvan bekend is dat ze verslechteren, kunt u potentiële prestatieproblemen proactief aanpakken en ervoor zorgen dat uw werklast soepel verloopt. Overweeg het implementeren van prestatie-afstemmingstechnieken of het optimaliseren van de toewijzing van middelen.
Geef prioriteit aan kritieke gebruikers- en systeemstromen
Kritieke gebruikers- en systeemstromen zijn de belangrijkste processen of workflows met de hoogste prioriteit in de werklast. Door prioriteit te geven aan deze kritieke stromen, zorgt u ervoor dat de meest essentiële onderdelen van de werklast optimaal presteren. Als u weet welke stromen cruciaal zijn, kunt u prioriteiten stellen voor de optimalisatie-inspanningen. Optimaliseer de prestatie-efficiëntie van de belangrijkste onderdelen van uw applicatie en u behaalt het hoogste rendement op uw investering. U moet toezicht houden op kritieke stromen en de populairste onderdelen van de applicatie. Zoek naar manieren om ze efficiënter te maken.
Optimalisatie van prestaties automatiseren
Automatisering kan repetitieve en tijdrovende handmatige processen elimineren, waardoor ze efficiënter kunnen worden uitgevoerd. Automatisering verkleint de kans op menselijke fouten en zorgt voor consistentie bij het uitvoeren van optimalisatietaken. Door deze taken te automatiseren, kunnen mensen zich richten op complexere activiteiten en activiteiten die waarde toevoegen. U kunt automatisering toepassen op verschillende taken, zoals prestatietests, implementatie en monitoring.
Geautomatiseerde prestatietests : gebruik tools voor geautomatiseerde prestatietests, zoals Selenium, om verschillende workloads en scenario's te simuleren. Power Apps Test Engine is een Power Platform CLI-onderdeel dat u kunt gebruiken om zelfstandige canvas-apps te testen in Power Apps.
Geautomatiseerde implementatie: implementeer geautomatiseerde implementatieprocessen om consistente en foutloze implementaties te garanderen. Gebruik CI/CD-tools (continue integratie/continue levering) om het implementatieproces te automatiseren. Met deze hulpmiddelen kunt u prestatieknelpunten identificeren wanneer u ze gebruikt om eindpunten te testen, HTTP-statussen te controleren en zelfs de kwaliteit en variaties van gegevens te valideren.
Monitoring en waarschuwingen: stel geautomatiseerde controle- en waarschuwingssystemen in om prestatiegegevens voortdurend te controleren en afwijkingen of onregelmatigheden te detecteren. Wanneer er prestatieproblemen worden gedetecteerd, kunnen er automatische waarschuwingen worden geactiveerd om de juiste teams of personen te waarschuwen.
Incidentbeheer: implementeer een geautomatiseerd incidentbeheersysteem dat waarschuwingen kan ontvangen, tickets kan aanmaken en tickets kan toewijzen aan de juiste teams voor oplossing. Met deze stappen zorgt u ervoor dat prestatieproblemen snel worden aangepakt en aan de juiste resources worden toegewezen.
Geautomatiseerde diagnostiek: ontwikkel geautomatiseerde diagnostische hulpmiddelen of scripts die prestatiegegevens kunnen analyseren en de achterliggende oorzaken van prestatieproblemen kunnen identificeren. Met deze hulpmiddelen kunt u specifieke gebieden of componenten van het systeem identificeren die prestatieproblemen veroorzaken.
Geautomatiseerde herstelacties: definieer en implementeer geautomatiseerde herstelacties die kunnen worden geactiveerd wanneer specifieke prestatieproblemen worden gedetecteerd. Deze acties kunnen bestaan uit het opnieuw opstarten van services, het aanpassen van de toewijzing van bronnen, het wissen van caches of het implementeren van andere technieken voor prestatieoptimalisatie.
Zelfherstellende systemen: bouw zelfherstellende mogelijkheden in uw systeem door het herstelproces voor bekende prestatieproblemen te automatiseren. Deze mogelijkheid kan bestaan uit het automatisch herstellen of aanpassen van de systeemconfiguratie om optimale prestaties te herstellen.
Pak technische schuld aan
Technische schuld heeft betrekking op de opeenstapeling van inefficiënties, suboptimale ontwerpkeuzes of shortcuts die tijdens het ontwikkelingsproces zijn genomen en die de prestaties kunnen beïnvloeden. Technische schuld, onduidelijke code en te complexe implementaties kunnen het lastiger maken om prestatie-efficiëntie te bereiken. Om technische schuld aan te pakken, moeten deze problemen worden geïdentificeerd en opgelost om de algehele prestaties en onderhoudbaarheid van de werklast te verbeteren. Deze werkzaamheden kunnen bestaan uit het refactoren van code, het optimaliseren van databasequery's, het verbeteren van het architectuurontwerp of het implementeren van best practices. Misschien hebt u bijvoorbeeld technische schuld gecreëerd om een deadline te halen. U moet die technische schuld aanpakken naarmate u de prestatie-efficiëntie in de loop van de tijd optimaliseert.
Optimaliseer databases
Het continu optimaliseren van databases houdt in dat u optimalisaties identificeert en implementeert om ervoor te zorgen dat databases de belasting aankunnen, snelle responstijden leveren en het gebruik van bronnen minimaliseren. Door databases regelmatig te optimaliseren, kunt u de applicatieprestaties verbeteren, de downtime verminderen en de algehele gebruikerservaring verbeteren.
- Optimaliseer databasequery's: slecht geschreven databasequery's kunnen de databaseprestaties verslechteren. Inefficiënte filters kunnen onnodige gegevensverwerking veroorzaken. Complexe subquery's, geneste query's en overmatige functies kunnen de uitvoeringssnelheid verlagen. Herschrijf query's die te veel gegevens ophalen. Identificeer uw meest voorkomende of cruciale databasequery's en optimaliseer ze. Dankzij de optimalisatie verlopen zoekopdrachten sneller.
- Modelontwerp beoordelen: controleer het gegevensmodel om er zeker van te zijn dat u het optimaliseert voor de specifieke vereisten van de toepassing.
Power Platform-facilitering
Optimalisatie van prestaties automatiseren: oplossingscontrole biedt prestatieaanbevelingen op basis van een statische analysecontrole van uw oplossingen in vergelijking met een set best-practice-regels om problematische patronen snel te kunnen herkennen. Zorg ervoor dat u deze aanbevelingen regelmatig doorneemt en toepast.
Optimalisatie van prestaties bewaken: integreer uw Power Platform-workloads met Application Insights om inzichten en aanbevelingen te krijgen voor het optimaliseren van de prestaties.
Analyseer prestaties en gebruik van agenten in Copilot Studio: Copilot Analytics biedt een uitgebreid overzicht van de prestaties van uw agent. Hierbij wordt gebruikgemaakt van kunstmatige intelligentie (AI) om te bepalen welke onderwerpen de grootste impact hebben op het escalatiepercentage, het verlatingspercentage en het oplossingspercentage. Het bijhouden van gespreksbetrokkenheidspercentages en resultaten is van essentieel belang voor het meten van de prestaties van agenten en voor het identificeren van verbeterpunten.
Controlelijst voor prestatie-efficiëntie
Raadpleeg de volledige reeks aanbevelingen.