Freigeben über


Bewährte Integrationsmethoden

Azure DevOps Services

Tools und Integrationen zwischen Diensten verbessern die Effizienz für Azure DevOps Services. Wenn Sie nicht vorsichtig sind, können automatisierte Tools die Ausführung einer hohen Anzahl von Anforderungen außer Kontrolle bringen. Die Anforderungen führen dazu, dass Azure DevOps Geschwindigkeitsbeschränkungen für Ihre Organisation erzwingt. Befolgen Sie diese bewährten Methoden, wenn Sie die REST-APIs für die Integration in Azure DevOps verwenden, um das Risiko zu verringern, die Grenzwerte für die Rate zu erreichen.

Nur Aktionen erfordernde Arbeitsaufgaben pushen

Pushen Sie nur Aktionen erfordernde Elemente in Azure DevOps, die Ihr Team in Zukunft für die Interaktion oder Adresse plant. Halten Sie Arbeitsaufgaben aus Azure DevOps, bis sie erforderlich sind. Versuchen Sie beispielsweise nicht, Telemetriedaten in Azure DevOps zu speichern.

Verwalten Ihres eigenen Datenspeichers

Fügen Sie in Azure DevOps keine Arbeitsaufgaben hinzu, um sie an einem zentralen Ort zu haben. Azure DevOps Services ist nicht als Datenspeicherdienst konzipiert. Verwalten Sie Ihren eigenen Datenspeicher.

Stapeln Der Änderungen

Das Ausführen einzelner Vorgänge ist langsam und teuer, was die führende Ursache für Leistungsprobleme und die Begrenzung der Rate ist. Stapeln Sie Ihre Änderungen in einem einzelnen Aufruf. Weitere Informationen finden Sie in unserer Batchdokumentation und im Beispielcode.

Einschränken ihrer Überarbeitungen

Viele Überarbeitungen für eine einzelne Arbeitsaufgabe erzeugen eine Aufgeblähung und verursachen Leistungsprobleme. Es wird empfohlen, die folgenden Aufgaben auszuführen:

  • Reduzieren Sie Ihre Aktualisierungen, indem Sie die Feldänderungen in batchieren. Aktualisieren Sie nicht nur ein Feld gleichzeitig.
  • Wenn Sie Änderungen an mehreren Arbeitsaufgaben haben, batchen Sie diese Änderungen in einer einzigen Aktion.
  • Halten Sie die Anzahl der Überarbeitungen auf ein Minimum, um Überarbeitungsgrenzwerte zu vermeiden.

Hinweis

Eine Überarbeitungsgrenze für Arbeitsaufgaben von 10.000 ist für Aktualisierungen über die REST-API wirksam. Dieser Grenzwert schränkt Updates aus der REST-API ein, aber Updates aus dem Webportal sind nicht betroffen.

Optimieren von Abfragen

Optimieren Sie Ihre Abfragen, um eine geringe Anzahl von Ergebnissen zurückzugeben. Komplexe Bedingungen und Filter können zu lang ausgeführten Abfragen führen. Halten Sie die Ausführungszeit Ihrer Abfragen unter 30 Sekunden, um Schwellenwertfehler zu vermeiden.

Tipps zur Abfrageleistung

  • Platzieren Sie nach Möglichkeit eine Datums- oder Bereichsbeschränkungsklausel am Anfang einer Abfrage.
  • Verringern Sie die Anzahl der Klauseln, die den Ever-Operator verwenden.
  • Verringern Sie die Anzahl der Klauseln, die den Contains-Operator verwenden, mit Ausnahme von Tags.
    • Verwenden Sie den Operator "Contains Words ", wenn verfügbar.
    • Verwenden Sie den Operator "Contains" nicht für lange Textfelder, da es teuer ist.
  • Vermeiden Sie nach Möglichkeit die Operatoren "<>" und nicht die Operatoren.
  • Vermeiden Sie die Verwendung des In Group-Operators für große Gruppen.
  • Minimieren Sie die Anzahl der Oder-Operatoren, und stellen Sie sicher, dass Sie noch über die Bereichsdefinition auf oberster Ebene verfügen, bevor Sie sie verwenden.
  • Vermeiden Sie die Verwendung einer OR-Klausel zwischen einem In-Gruppenoperator und Einem Bereichs- oder Iterationspfad.
  • Verringern Sie die Anzahl der Allgemeinen Klauseln, um Ihr Ziel nach Möglichkeit zu erreichen.
  • Vermeiden Sie die Sortierung nach anderen Elementen als Kernfeldern, z . B. ID, wenn möglich.
  • Verwenden Sie ein benutzerdefiniertes Feld in Ihren Filtern, wenn Sie nach einem benutzerdefinierten Feld sortieren möchten.
  • Geben Sie nach Möglichkeit ein Projekt an. Andernfalls wird der Bereich der Abfrage auf die gesamte Sammlung festgelegt und kann erheblich länger dauern, als es erforderlich ist. Deaktivieren Sie im Abfrage-Editor das Kontrollkästchen "Über Projekte in der oberen rechten Ecke abfragen".

Projektübergreifende Abfrage

  • Geben Sie an, welches Projekt Sie suchen, wenn für die Abfrage eine Suche über Projekte erforderlich ist.
  • Verwenden Sie Tags anstelle von Schlüsselwort (keyword) nach Möglichkeit, es sei denn, Sie suchen nach Teiltext einer Zeichenfolge.

Behandeln von Fehlern ordnungsgemäß

Aktualisierungen und Abfragen schlagen fehl, wenn ressourcenlimits oder die Nutzungshäufigkeit den Grenzwert überschreitet. Eine Abfrage, die länger als 30 Sekunden ausgeführt wird, gibt beispielsweise den folgenden Fehler zurück:

VS402335: The timeout period (30 seconds) elapsed prior to completion of the query or the server is not responding.

Wenn Sie die REST-APIs verwenden, stellen Sie sicher, dass Sie Ihren Code so entwerfen, dass Fehler ordnungsgemäß behandelt werden.

Beschränken Sie die Anzahl der Links pro Arbeitsaufgabe so weit wie möglich, um die Erzwingung von Verknüpfungsgrenzwerten zu vermeiden.

Wichtig

Wir planen, in Naher Zukunft Überarbeitungs- und Verknüpfungsgrenzwerte für Arbeitsaufgaben zu erzwingen. Diese Grenzwerte werden durch Leistungsüberwachung und Kundenfeedback bestimmt.

Verwenden Sie keine Abfragen für die Berichterstellung.

Die Verwendung von Abfragen und individuellen Abrufen von Arbeitsaufgabenaufrufen ist die beste Möglichkeit, Ratelimits für Ihre Organisation zu erhalten. Führen Sie keine Abfragen aus, um große Listen von Arbeitsaufgaben zurückzugeben. Verwenden Sie stattdessen die Berichtsarbeitselementverknüpfungen und Überarbeitungen von REST-APIs für Arbeitsaufgaben.

Weitere Informationen finden Sie in unserem C#-Beispiel auf GitHub.