Delen via


Aanbevolen integratieprocedures

Azure DevOps Services

Hulpprogramma's en integraties tussen services verbeteren de efficiëntie van Azure DevOps Services. Als u niet voorzichtig bent, kunnen geautomatiseerde hulpprogramma's uit de hand lopen en een hoog aantal verzoeken uitvoeren. De aanvragen zorgen ervoor dat Azure DevOps frequentielimieten afdwingt voor uw organisatie. Volg deze aanbevolen procedures wanneer u de REST API's gebruikt om te integreren met Azure DevOps om het risico op het bereiken van de frequentielimieten te verminderen.

Alleen bruikbare werkitems pushen

Push alleen actie-items naar Azure DevOps waar uw team in de toekomst mee aan de slag wil gaan of aandacht aan wil besteden. Werkitems uit Azure DevOps houden totdat dit nodig is. Probeer bijvoorbeeld geen telemetriegegevens op te slaan in Azure DevOps.

Uw eigen gegevensarchief onderhouden

Voeg geen werkitems toe aan Azure DevOps om ze allemaal op één plaats te hebben. Azure DevOps Services is niet ontworpen als een gegevensopslagservice. Uw eigen gegevensarchief onderhouden.

Uw wijzigingen batchgewijs doorvoeren

Het uitvoeren van één bewerking is traag en duur, wat de belangrijkste oorzaak is voor prestatieproblemen en snelheidsbeperking. Bundel uw wijzigingen in één oproep. Zie onze batchdocumentatie en voorbeeldcode voor meer informatie.

Beperk uw revisies

Veel revisies op één werkitem maken bloat en veroorzaken prestatieproblemen. U wordt aangeraden de volgende taken uit te voeren:

  • Beperk uw updates door de veldwijzigingen in batches te verwerken. Werk niet slechts één veld tegelijk bij.
  • Als u wijzigingen in meerdere werkitems hebt, bundel deze wijzigingen in één actie.
  • Houd het aantal revisies tot een minimum om revisielimieten te voorkomen.

Opmerking

Een revisielimiet voor werkitems van 10.000 is van kracht voor updates die zijn gemaakt via de REST API. Deze limiet beperkt updates van de REST API, maar updates van de webportal worden niet beïnvloed.

Query's optimaliseren

Optimaliseer uw query's om een bescheiden aantal resultaten te retourneren. Complexe voorwaarden en filters kunnen leiden tot langlopende query's. Bewaar de uitvoeringstijd van uw query's minder dan 30 seconden om drempelwaardefouten te voorkomen.

Tips voor queryprestaties

  • Plaats waar mogelijk een datum- of bereikbeperkingscomponent boven aan een query.
  • Verminder het aantal componenten dat gebruikmaakt van de Ever-operator .
  • Verminder het aantal componenten dat gebruikmaakt van de operator Contains , met uitzondering van tags.
    • Gebruik de operator Woorden bevat indien beschikbaar.
    • Gebruik de operator Contains niet voor lange tekstvelden, omdat het duur is.
  • Vermijd indien mogelijk de '<>' en not-operatoren.
  • Vermijd het gebruik van de operator In-groep voor grote groepen.
  • Minimaliseer het aantal of operators en zorg ervoor dat u nog steeds het bereik op het hoogste niveau hebt voordat u deze gebruikt.
  • Vermijd het gebruik van een OR-component tussen een operator in groep en gebieds- of iteratiepaden.
  • Verminder het aantal algemene componenten om uw doel te bereiken, indien mogelijk.
  • Vermijd sorteren op andere dan kernvelden, zoals id, indien mogelijk.
  • Gebruik een aangepast veld in uw filters als u wilt sorteren op een aangepast veld.
  • Geef indien mogelijk een project op. Anders kan de query betrekking hebben op de gehele verzameling en aanzienlijk langer duren dan nodig is. Haal het vinkje weg bij "Query's uitvoeren over projecten" in de rechterbovenhoek van de queryeditor.

Query's uitvoeren op projecten

  • Specificeer welk project u zoekt als de query een zoekopdracht over meerdere projecten vereist.
  • Gebruik waar mogelijk tags in plaats van trefwoorden , tenzij u naar gedeeltelijke tekst van een tekenreeks zoekt.

Fouten probleemloos afhandelen

Updates en query's mislukken wanneer resourcelimieten of frequentie van gebruik de limietdrempel overschrijdt. Een query die langer dan 30 seconden wordt uitgevoerd, retourneert bijvoorbeeld de volgende fout:

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

Wanneer u de REST API's gebruikt, moet u ervoor zorgen dat u uw code ontwerpt om fouten op de juiste manier af te handelen.

Beperk het aantal koppelingen per werkitem zoveel mogelijk om het afdwingen van koppelingslimieten te voorkomen.

Belangrijk

We zijn van plan om revisie van werkitems en koppelingslimieten in de nabije toekomst af te dwingen. Deze limieten worden bepaald door prestatiebewaking en feedback van klanten.

Geen query's gebruiken voor rapportage

Het gebruik van query's en afzonderlijke werkitemaanroepen is de beste manier om tarieflimieten voor uw organisatie af te dwingen. Voer geen query's uit om grote lijsten met werkitems te retourneren. Gebruik in plaats daarvan de REST-API's voor koppelingen naar werkitems en revisies van werkitems.

Zie ons C#-voorbeeld op GitHub voor meer informatie.