Andere prestatieoverwegingen
Naast de vier belangrijke prestatieprincipes, zijn er verschillende andere mogelijke redenen voor slechte prestaties, die doorgaans te wijten zijn aan externe factoren.
Houd rekening met de verschillen in clientbrowsers, apparaten en locaties
Canvas-apps kunnen voor verschillende apparaten, browsers en locaties met verschillende netwerkomstandigheden worden gebruikt. Terwijl de Power Apps-client wordt uitgevoerd, zorgt u ervoor dat u moderne, bijgewerkte en ondersteunde browsers gebruikt. De prestaties van een app kunnen variëren bij het laden van grote sets gegevens op verschillende platforms, zoals iOS of Android. Deze variatie treedt op vanwege verschillende beperkingen voor netwerkverzoeken op elk platform. Het aantal toegestane gelijktijdige netwerkverzoeken verschilt per platform. Deze verschillen kunnen een grote impact hebben op de laadtijd van gegevens voor grote datasets.
Houd rekening met de verschillen in de geografische locatie van de on-premises gegevensgateway en -omgeving
Gebruikers hebben wereldwijd toegang tot canvas-apps. Het wordt echter aanbevolen om de gegevensbron in de buurt van de meeste eindgebruikers te gebruiken. Wanneer uw app bijvoorbeeld toegang heeft tot uw on-premises-gegevensgateway, kunt u de gateway het beste in de buurt van de gebruikers plaatsen die de app het vaakst openen.
Algemene problemen aan de serverzijde
Slechte prestaties kunnen worden veroorzaakt door problemen bij de serverbron van de gegevens. Dit kan gebeuren om verschillende redenen. U kunt de monitoringtool gebruiken om het specifieke probleem te beoordelen door de timing van de dataoproepen te meten.
Mogelijke knelpunten in de gegevensbron
Er zijn veel mogelijke oorzaken van knelpunten in de gegevensbron. Meestal vormen een paar tabellen in de gegevensbron het middelpunt van de activiteit voor veel zoekopdrachten. Query's kunnen traag zijn als:
- De gegevensbron ontbreekt of over onjuiste indexen beschikt.
- De query voegt buitengewoon grote hoeveelheden gegevens samen op de server.
- Voor de query is bijvoorbeeld een tabel SCAN vereist: In operator in plaats van een index zoals StartsWith.
- De back-endmachine die de gegevensbron host weinig resources heeft.
- Het back-end SQL-exemplaar blokkades, deadlocks of resourceconflicten heeft.
- De on-premises gegevensgateway beschadigd is.
- De on-premises-gegevensgateway moet worden uitgeschaald.
Stem de back-endgegevensbron af wanneer deze problemen optreden om trage prestaties van de app te voorkomen.
Specifieke gegevensbronnen
Azure SQL-database
Het is belangrijk om het juiste niveau te selecteren voor uw zakelijke vereisten. Zie Azure SQL Database-documentatie voor meer informatie. Voor een lager niveau gelden beperkingen. Vanuit het oogpunt van prestaties zijn CPU, I/O-doorvoer en latentie belangrijk. Controleer daarom regelmatig de prestaties van de SQL-database en controleer of het resourcegebruik de drempel overschrijdt. Bijvoorbeeld: on-premises SQL Server stelt normaal gesproken de drempel van het CPU-gebruik in op ongeveer75%..
SharePoint
De SharePoint-connector kan worden gebruikt om apps te maken die gegevens van SharePoint-lijsten gebruiken. Hier volgen enkele veelvoorkomende prestatieproblemen en oplossingen voor SharePoint:
Te veel dynamische opzoekkolommen voorkomen: SharePoint ondersteunt verschillende gegevenstypen, inclusief dynamische zoekopdrachten, zoals Persoon, Groep en Berekend. Als een lijst te veel dynamische kolommen definieert, kost het meer tijd om deze dynamische kolommen binnen SharePoint te manipuleren voordat gegevens worden geretourneerd naar de client waarop de canvas-app wordt uitgevoerd. Om dit te voorkomen, moet u de dynamische opzoekkolommen in SharePoint niet te veel gebruiken. Gebruik statische kolommen bijvoorbeeld om e-mailaliassen of namen van personen te behouden.
Maak zorgvuldig gebruik van de fotokolom en bijlage: de grootte van een afbeelding en het bijgevoegde bestand kunnen bijdragen aan een trage reactie tijdens het ophalen naar de client. Beoordeel uw lijst en zorg ervoor dat alleen de noodzakelijke kolommen zijn gedefinieerd. Het aantal kolommen in de lijst is van invloed op de prestaties van de gegevensverzoeken. Dit komt doordat de overeenkomende records, of de records tot aan de gedefinieerde limieten voor de gegevensrij, worden opgehaald en teruggestuurd naar de client met alle kolommen die zijn gedefinieerd in de lijst, of de app ze nu allemaal gebruikt of niet.
Overweeg om grote lijsten op te splitsen: als u een grote lijst met honderdduizenden records heeft, kunt u overwegen de lijst te partitioneren of op te splitsen in verschillende lijsten op basis van parameters zoals categorieën of datum en tijd. Uw gegevens kunnen bijvoorbeeld in verschillende lijsten op jaar- of maandbasis worden opgeslagen. In dat geval kunt u de app ontwerpen om een gebruiker een tijdvenster te laten selecteren en de gegevens binnen dat bereik op te halen.
Dataverse
Wanneer u Microsoft Dataverse als de gegevensbron gebruikt, gaan gegevensverzoeken rechtstreeks naar het omgevingsexemplaar, zonder via Azure API Management te gaan. Het is dus meestal sneller dan andere gegevensbronnen. Zie Gegevensoproepstroom bij verbinding met Microsoft Dataverse. voor meer informatie
Controleer de aangepaste tabelconfiguraties: wanneer aangepaste tabellen worden gebruikt in Dataverse, is mogelijk extra beveiligingsconfiguratie vereist zodat gebruikers de records kunnen bekijken met canvas-apps. Zie Beveiligingsconcepten in Dataverse, Gebruikersbeveiliging configureren voor resources in een omgeving en Beveiligingsrollen en bevoegdheden voor meer informatie
Excel
Met de Excel-connector kan een canvas-app verbinding maken met een tabel in Excel Deze connector heeft echter beperkingen in vergelijking met andere gegevensbronnen. Het beperkt de canvas-app bijvoorbeeld tot het laden van gegevens uit de tabel tot maximaal 2000 records vanwege de beperkte delegeerbare functies. Als u meer dan 2000 records wilt laden, verdeelt u uw gegevens in verschillende gegevenstabellen als andere gegevensbronnen.
Gebruik de nieuwe Excel-connector : zorg ervoor dat u de nieuwe Excel-connector - Excel Online zakelijk Het maakt toegang voor meerdere gebruikers mogelijk en kan conflictproblemen beter afhandelen.
Gebruik alleen de kolommen die u nodig heeft uit grote gegevenslijsten in Excel: een app kan langzaam presteren als het Excel-bestand te veel gegevenstabellen bevat of gegevenstabellen die een enorme hoeveelheid gegevens over meerdere kolommen bevatten. Om ervoor te zorgen dat uw app niet wordt beïnvloed door dit probleem, definieert u alleen de benodigde kolommen in de gegevenstabel in een Excel-bestand.
Let op: Excel als database kent beperkingen. Excel is geen relationeel databasesysteem: alle wijzigingen vanuit een app worden door Excel op dezelfde manier beheerd alsof een gebruiker rechtstreeks gegevens in een Excel-bestand zou wijzigen. Als de app een groot aantal leesbewerkingen heeft, maar minder updatebewerkingen, presteert deze mogelijk goed. Als de app echter zware transacties vereist, kan dit de prestaties van de app negatief beïnvloeden. Er is geen specifieke drempelwaarde voor het aantal transacties. Het hangt ook af van de gegevens die worden gemanipuleerd. Verschillende andere aspecten hebben ook invloed op de prestaties van de app, zoals de netwerkoverhead of het apparaat van de gebruiker.
Denk aan de verschillen in geografische locatie : de geografische locatie van de gegevens en de afstand ervan tot klantlocaties kunnen een prestatieprobleem zijn. Dit probleem kan worden versterkt als een mobiele client een beperkte bandbreedte heeft.