Weitere Überlegungen zur Leistung
Neben den vier zentrale Leistungsprinzipien gibt es mehrere andere mögliche Gründe für eine schlechte Leistung, die typischerweise auf externe Faktoren zurückzuführen sind.
Unterschiede bei Client-Browsern, -Geräten und -Standorten berücksichtigen
Canvas-Apps können auf verschiedenen Geräten, Browsern und Standorten mit unterschiedlichen Netzwerkbedingungen verwendet werden. Wenn der Power Apps Client ausgeführt wird, stellen Sie sicher, moderne, aktualisierte und unterstützte Browser zu verwenden. Die Leistung einer App kann variieren, wenn große Datenmengen auf verschiedenen Plattformen wie iOS oder Android geladen werden. Diese Abweichung geschieht aufgrund unterschiedlicher Netzwerkanforderungsbeschränkungen auf jeder Plattform. Beispielsweise kann die Anzahl der gleichzeitig zulässigen Netzwerkanforderungen je nach Plattform unterschiedlich sein. Diese Unterschiede können sich bei großen Datasets stark auf die Zeit zum Laden der Daten auswirken.
Geografischen Standort des lokalen Datengateways und der Umgebung berücksichtigen
Benutzer können auf Canvas Apps global zugreifen. Wir empfehlen jedoch, dass Sie die Datenquelle in der Nähe der meisten Ihrer Benutzer suchen. Wenn Ihre App beispielsweise auf Ihr lokales Datengateway zugreift, platzieren Sie das Gateway am besten in der Nähe der Benutzenden, die am häufigsten auf die App zugreifen.
Allgemeine serverseitige Probleme
Eine schlechte Leistung kann durch Probleme an der Serverquelle der Daten verursacht werden. Dies kann verschiedene Ursachen haben. Sie können das Überwachungstool verwenden, um das spezifische Problem zu bewerten, indem Sie die Datenaufrufzeiten messen.
Mögliche Engpässe in der Datenquelle
Es gibt viele mögliche Ursachen für Engpässe in der Datenquelle. Normalerweise stehen bei vielen Abfragen einige Tabellen in der Datenquelle im Mittelpunkt der Aktivität. Abfragen können aus folgenden Gründen langsam sein:
- Die Datenquelle fehlt oder hat falsche Indizes.
- Durch die Abfrage werden außergewöhnlich große Datenmengen auf dem Server zusammengeführt.
- Die Abfrage erfordert einen Tabellen-SCAN, z. B. In-Operator, anstatt einen Index wie StartsWith zu verwenden.
- Der Back-End-Computer, auf dem sich Datenquelle befindet, ist ressourcenschonend.
- Die Back-End-SQL-Instanz weist Blockierungen, Deadlocks oder Ressourcenkonflikte auf.
- Der lokale Datengateway ist fehlerhaft.
- Das lokale Datengateway sollte skaliert werden.
Wenn diese Probleme auftreten, optimieren Sie die Back-End-Datenquelle, um zu vermeiden, dass die App-Leistung verlangsamt wird.
Spezifische Datenquellen
Azure SQL-Datenbank
Es ist wichtig, die richtige Stufe für Ihre Geschäftsanforderungen auszuwählen. Weitere Informationen finden Sie in der Azure SQL-Datenbank-Dokumentation. Eine niedrigere Ebene hat einige Einschränkungen und Grenzen. Aus Sicht der Leistung sind CPU, E/A-Durchsatz und Latenz wichtig. Daher empfehlen wir, dass Sie die Leistung der SQL-Datenbank regelmäßig überprüfen und prüfen, ob die Ressourcennutzung den Schwellenwert überschreitet. Beispielsweise legt lokal SQL Server normalerweise den Schwellenwert für die CPU-Auslastung auf etwa 75Prozent fest.
SharePoint
Mit dem SharePoint-Konnektor können Sie Apps mit Daten erstellen, die SharePoint-Listen verwenden. Hier sind einige häufige Leistungsprobleme und Lösungen für SharePoint:
Zu viele dynamische Suchspalten vermeiden: SharePoint unterstützt verschiedene Datentypen einschließlich dynamischer Suchen wie Person, Gruppe und Berechnet. Wenn eine Liste zu viele dynamische Spalten definiert, dauert es länger, diese dynamischen Spalten innerhalb von SharePoint zu manipulieren, bevor Daten an den Client zurückgegeben werden, der die Canvas App ausführt. Um dies zu vermeiden, verwenden Sie die dynamischen Suchspalten in SharePoint nicht übermäßig. Verwenden Sie stattdessen beispielsweise statische Spalten, um beispielsweise E-Mail-Aliase oder Namen von Personen beizubehalten.
Seien Sie bei der Verwendung der Bildspalte und des Anhangs vorsichtig: Die Größe eines Bildes und einer angehängten Datei kann zu einer langsamen Reaktion beim Abrufen auf dem Client beitragen. Überprüfen Sie Ihre Liste und stellen Sie sicher, dass nur die erforderlichen Spalten definiert wurden. Die Anzahl der Spalten in der Liste wirkt sich auf die Leistung der Datenanforderungen aus. Dies liegt daran, dass die übereinstimmenden Datensätze oder die Datensätze bis zu den festgelegten Datenzeilengrenzen abgerufen und mit allen in der Liste festgelegten Spalten an den Client zurückgesendet werden – auch wenn die App nicht alle verwendet.
Überlegen Sie sich, lange Listen aufzuteilen: Wenn Sie eine große Liste mit Hunderttausenden von Datensätzen haben, überlegen Sie sich, die Liste zu partitionieren oder die Liste in mehrere Listen zu unterteilen, die auf Parametern wie den Kategorien oder Datum und Uhrzeit basieren. Beispielsweise können Ihre Daten jährlich oder monatlich in verschiedenen Listen gespeichert werden. In einem solchen Fall können Sie die App so gestalten, dass ein Benutzer ein Zeitfenster auswählen und die Daten innerhalb dieses Bereichs abrufen kann.
Dataverse
Wenn Sie Microsoft Dataverse als Datenquelle verwenden, gehen Datenanfragen direkt an die Umgebungsinstanz ohne Azure API Management zu durchlaufen. Daher ist es tendenziell schneller als andere Datenquellen. Weitere Informationen finden Sie unter Datenaufrufflow beim Verbinden mit Microsoft Dataverse.
Überprüfen Sie die Tabellekonfigurationen: Wenn benutzerdefinierte Tabellen in Dataverse verwendet werden, ist möglicherweise eine zusätzliche Sicherheitskonfiguration erforderlich, damit Benutzende die Datensätze mit Canvas-Apps anzeigen können. Weitere Informationen finden Sie unter Sicherheitskonzepte in Dataverse, Konfigurieren Sie die Benutzersicherheit für Ressourcen in einer Umgebung, und Sicherheitsrollen und -berechtigungen.
Excel
Der Excel-Konnector erlaubt einer Canvas-App, eine Verbindung zu den Daten in einer Tabelle in einer Excel-Datei herzustellen Allerdings weist dieser Konnektor im Vergleich zu anderen Datenquellen Einschränkungen auf. Aufgrund begrenzter delegierbarer Funktionen ist die Canvas-App beispielsweise darauf beschränkt, nur bis zu 2.000 Datensätze an Daten aus der Tabelle zu laden. Um mehr als 2.000 Datensätze zu laden, partitionieren Sie Ihre Daten in andere Datentabellen als andere Datenquellen.
Nutzen Sie den neuen Excel-Konnektor: Nutzen Sie unbedingt den neuen Excel-Konnektor – Excel Business online. Er ermöglicht den Mehrbenutzerzugriff und löst Konfliktprobleme besser.
Nutzen Sie aus langen Datenlisten in Excel nur die Spalten, die Sie wirklich brauchen: Eine App arbeitet eventuell nur langsam, wenn die Excel-Datei mit zu vielen Datentabellen oder Datentabellen mit einer immensen Datenmenge über mehrere Spalten verwendet. Um sicherzustellen, dass Ihre App von diesem Problem nicht betroffen ist, legen Sie nur die Spalten fest, die Sie in der Datentabelle in einer Excel-Datei benötigen.
Bedenken Sie die Grenzen von Excel als Datenbank. Excel ist kein relationales Datenbanksystem: Alle Änderungen an einer App werden von Excel so verwaltet, als würde ein Benutzender Daten in einer Excel-Datei ändern. Wenn die App eine hohe Anzahl von Lesevorgängen, aber weniger Aktualisierungsvorgänge aufweist, funktioniert sie möglicherweise gut. Wenn die App jedoch umfangreiche Transaktionen erfordert, kann dies die Leistung der App beeinträchtigen. Es gibt keinen spezifischen Schwellenwert für die Anzahl der Transaktionen. Es kommt auch auf die manipulierten Daten an. Verschiedene andere Aspekte wirken sich auch auf die Leistung der App aus, z. B. der Netzwerk-Overhead oder das Gerät des Benutzenden.
Berücksichtigen Sie die Unterschiede des geografischen Standorts: Der geografische Standort der Daten und ihre Entfernung von Kundenstandorten können ein Leistungsproblem darstellen. Dieses Problem kann sich verstärken, wenn ein mobiler Client eine begrenzte Bandbreite hat.
App für verbesserte Leistung vorladen aktivieren
Sie können Ihre App optional vorladen, um die Leistung zu steigern.
Melden Sie sich bei Power Apps an.
Wählen Sie im linken Navigationsbereich Apps.
Wählen Sie die App und dann Einstellungen auf der Befehlsleiste aus.
Legen Sie im Bereich App-Einstellungen die Option App für höhere Leistung vorab laden auf Ja fest. Die App wird dann vorab geladen.
Entfernen Sie Ihre App und fügen Sie sie erneut zu Teams hinzu, damit die Änderungen bei den in Team eingebetteten Apps wirksam werden.
Anmerkung
Dadurch werden die kompilierten App-Ressourcen über nicht authentifizierte Endpunkte zugänglich, damit sie vor der Authentifizierung geladen werden können. Benutzer können Ihre App jedoch nur verwenden, um über Connectors auf Daten zuzugreifen, nachdem die Authentifizierung und Autorisierung abgeschlossen sind. Dieses Verhalten stellt sicher, dass die Daten, die eine App aus Datenquellen abruft, nicht für nicht authentifizierte Benutzer verfügbar sind. Zusammengestellte App-Ressourcen enthalten eine Sammlung von JavaScript-Dateien, die in App-Steuerelementen erstellten Text (wie PCF-Steuerelemente), Medienelemente (wie Bilder), den App-Namen und die Umgebungs-URL enthalten, in der sich die App befindet.
Im Allgemeinen sollten Apps Medien und Informationen aus Datenquellen über Verbindungen abrufen. Wenn Medien und Informationen zur App hinzugefügt werden müssen, ohne von einer Verbindung zu stammen, und sie als vertraulich angesehen werden, überlegen Sie, diese Einstellung zu deaktivieren. Beachten Sie, dass das Deaktivieren dieser Einstellung dazu führt, dass Benutzer etwas länger warten, um auf eine App zuzugreifen.