Orchestrator
Plus récente (Latest)
False
Image de fond de la bannière
Guide de l'API Orchestrator
Dernière mise à jour 21 mai 2024

Optimisation des limites de débit et des champs de données volumineux

Les limites de taux et les optimisations relatives aux champs de données volumineux constituent des bonnes pratiques du secteur afin de maintenir des niveaux de performances optimaux, une utilisation hautement sécurisée, ainsi qu’une disponibilité constante du service. Voici les avantages que présentent ces limites :
  • Elles garantissent la prévisibilité du système : connaître la limite d'appels API permet de mieux concevoir et de mieux gérer vos applications. Cela assure un environnement prédictible, ce qui réduit les éventuelles surprises dues à des dépassements de limite inattendus.
  • Elles améliorent les performances : en contrôlant le trafic sur nos serveurs, nous assurons des performances optimales et des réponses plus rapides, ce qui améliore considérablement votre expérience produit.
  • Elles renforcent la sécurité : les limites détaillées ci-dessous agissent comme un niveau de sécurité supplémentaire, protégeant votre système face à d'éventuelles cybermenaces.
  • Elles garantissent une utilisation adéquate : nos limites de débit garantissent une attribution équitable des ressources à tous les utilisateurs, ainsi qu'un fonctionnement fluide, même au cours des périodes d'utilisation maximale.

Les limites et les optimisations des champs de données volumineux décrites ci-dessous nécessitent certains ajustements de votre part, mais nous sommes convaincus qu’elles généreront des avantages à long terme.

Limites de débit

Voici les limites que nous appliquons :

Endpoint

Exemples

Limits

Date d’entrée en vigueur

GET/odata/Jobs/?<filters>

  • GET/odata/Jobs

  • GET/odata/Jobs?$top=100

  • GET/odata/Jobs?$top=20&$filter=Robot/Id eq 123L

  • GET/odata/Jobs?$filter=((CreationTime ge 2024-04-04T12:00:47.264Z) and (ProcessType eq 'Process'))&$expand=Robot,Machine,Release&$orderby=CreationTime desc

100 requêtes API/minute/locataire

Juillet 2024

GET/odata/QueueItems/?<filters>

  • GET/odata/QueueItems

  • GET/odata/QueueItems/?$top=20

  • GET/odata/QueueItems?$filter=((Status eq '0'))

  • GET/odata/QueueItems?$filter=((QueueDefinitionId eq 102135))&$expand=Robot,ReviewerUser&$orderby=Id desc

100 requêtes API/minute/locataireJuillet 2024
Important :
GET/odata/Jobs(<job_id>) n'est pas limité en débit.

Il est important de noter que ces limites ne s’appliquent pas à l’ajout d’éléments de file d’attente ni au traitement des tâches. Ainsi, il n’y a aucun impact sur l’ajout d’un élément de file d’attente, sa suppression, la configuration de son état, ou encore le démarrage et le traitement d’un certain nombre de tâches.

Vous pouvez suivre votre utilisation d’API par mois ou par jour en vous rendant sur l’onglet Audit d’API de la fenêtre Surveillance, au niveau du locataire.

En-têtes exposés

En-tête

Description

Exemple

Retry-After

Toutes les demandes au-delà des limites susmentionnées reçoivent une réponse HTTP 429 comportant cet en-tête.

Elle affiche le nombre de secondes que vous devez attendre avant que le point de terminaison ne soit à nouveau disponible.

Retry-After: 10 signifie que la limite de débit sur le point de terminaison expire dans 10 secondes. Toutes les nouvelles tentatives dans ces 10 secondes entraînent une réponse 429.

X-RateLimit-Remaining

Nombre d’appels restants

X-RateLimit-Remaining: 30 signifie qu’il vous reste 30 appels dans la plage horaire actuelle
Remarque :

Si le nombre de requêtes par minute est inférieur à 10, il sera renvoyé comme 0.

Impact sur les activités

Les activités suivantes sont affectées par ces limites :

  • Get Job
  • Obtenir les éléments de file d'attente (Get Queue Items)
  • Requête HTTP d’Orchestrator (Orchestrator HTTP Request), lorsque celle-ci est utilisée pour appeler les points de terminaison GET /odata/Jobs ou GET /odata/QueueItems
Les activités système version 2024.3 ou ultérieure appliquent l'en-tête de réponse Retry-after, ce qui signifie qu'elles procèdent automatiquement à de nouvelles tentatives des opérations Orchestrator. Afin d'en bénéficier, veillez à toujours utiliser la dernière version des activités système.

S’adapter aux modifications

Voici ce que nous vous recommandons de faire pour veiller à ce que vous ne dépassiez pas nos limites et que vous en tiriez pleinement parti :

  • Analysez votre utilisation des API et les informations que vous récupérez à partir de nos points de terminaison de type GetAll, mentionnés plus haut.
  • Ajustez la fréquence des appels de votre API ainsi que les procédures d’extraction de données pour vous aligner sur ces seuils, le cas échéant.
  • Consultez les sections les sections Exportation des tâches et Exportation des éléments de la file d’attente pour obtenir des exemples de récupération des données des tâches et des éléments de la file d’attente.
  • Utilisez l’option d’exportation de données en temps réel d’Insights.
  • Veillez à toujours utiliser la dernière version des activités système.
  • Contactez votre gestionnaire de compte ou notre équipe d’assistance si vous avez des questions ou désirez avoir plus de précisions.

Champs de données volumineux

Les points de terminaison d’API utilisés pour récupérer des listes de tâches et d’éléments de file d’attente peuvent s’avérer problématiques lorsqu’ils sont utilisés à des fins de surveillance en temps réel et d’exportation de données. Par exemple :

  • Si la requête concerne 1000 éléments et que chaque élément représente 1 Mo de données volumineuses, la réponse à un seul appel d’API peut atteindre une taille de 1 Go. Dans la mesure où certains intermédiaires n’autorisent pas les réponses d’une taille aussi importante, cela conduit à un échec des requêtes.

  • Lorsque des filtres complexes sont utilisés et que la pagination d’une file d’attente contient plusieurs millions d’éléments de file d’attente, les requêtes peuvent conduire une expiration du délai de traitement après quelques dizaines de pages. Cela est lié à la quantité de données devant être extraites de la base de données.

Champs de tâche

Pour améliorer l’efficacité du système et garantir la confidentialité des données, des données spécifiques sont omises dans les réponses du point de terminaison Jobs - GetAll. Voici les champs concernés :

Endpoint

Champs omis

Ce que vous pouvez utiliser à la place

Date d’entrée en vigueur

GET/odata/Jobs

  • InputArguments

  • OutputArguments

GET/odata/Jobs({key})

Pour les exportations, utilisez le point de terminaison dédié : GET/odata/Jobs/UiPath.Server.Configuration.Data.Export

Pour plus de détails, consultez la section Exportation des tâches.

Locataires Communauté (Community) et Contrôle de validité (Canary) : mars 2024

Locataires Enterprise : juillet 2024

Si vous utilisez le point de terminaison GET /odata/Jobs, que ce soit via une API ou via les activités Obtenir les tâches (Get Jobs), Obtenir les éléments de file d’attente (Get Queue Items) ou Requête HTTP d’Orchestrator (Orchestrator HTTP Request), vous devez déterminer si vous utilisez l’un des champs répertoriés. Si c’est le cas, veuillez noter que le contenu de ces champs sera renvoyé comme étant nul.

Nous vous recommandons de tester les processus dans vos locataires Canary afin d’en évaluer l’impact.

Champs de données volumineux des éléments de file d'attente

Les performances du point de terminaison GET/odata/QueueItems sont optimisées grâce à l'application des limitations de taille suivantes à ses champs :

Champ

Limite

Date d’entrée en vigueur

Comment savoir si vous êtes impacté

Comment résoudre ce problème

Progress

1 048 576 caractères

> Locataires Communauté (Community) et Contrôle de validité (Canary) : avril 2024

> Locataires Enterprise : mai 2024

Un message d'erreur spécifique est renvoyé.

Nous vous recommandons d'utiliser des compartiments de stockage et/ou le stockage d'objets blob de Data Service si vous devez stocker davantage de données.

104 857 caractères

Tous les locataires : septembre 2024

AnalyticsData/Analytics

10 Ko

> Locataires Communauté (Community) et Contrôle de validité (Canary) : juin 2024

> Locataires Enterprise : septembre 2024

Enterprise : si votre charge de données actuelle dépasse ces limites, nous enverrons des rapports mensuels aux administrateurs.

OutputData/Output

100 KB

SpecificContent/SpecificData

500 KB

ProcessingException - Reason

102 400 caractères

ProcessingException - Details

102 400 caractères

Le filtre suivant est également limité afin d'optimiser les performances :

Filtrer (Filter)

Limite

Date d’entrée en vigueur

Comment savoir si vous êtes impacté

Comment résoudre ce problème

$top

> Si vous n'utilisez pas le filtre $top, vous recevez 100 enregistrements par défaut.
> Si vous utilisez le filtre $top, vous recevez un maximum de 100 enregistrements. Tout dépassement de ce seuil de 100 génère un message d'erreur 400 Bad Request.

> Locataire Communauté (Community) et Contrôle de validité (Canary) : juin 2024

> Locataires Enterprise : septembre 2024

Entreprise : nous prévoyons d'envoyer une notification par e-mail aux administrateurs lorsque nous détectons l'utilisation de ce filtre dans des appels API. Nous vous remercions également de surveiller cela attentivement de votre côté.

Nous vous recommandons de modifier en conséquence votre logique d'utilisation du processus ou de l'API lorsque vous prévoyez de dépasser cette limite.

Alternatives

Vous pouvez utiliser les alternatives suivantes pour récupérer les champs Jobs et QueueItems :

Migrer de l’environnement local vers le cloud

Important :

Les limites de débit et les modifications des champs de données volumineux ne seront pas implémentées dans les environnements locaux.

Si vous utilisez une version autonome d’Orchestrator et que vous envisagez de passer au cloud, vous pouvez utiliser les journaux des requêtes IIS afin de déterminer le volume des requêtes pour les points de terminaison impactés. L’analyse dépendra de votre méthode d’agrégation des journaux, pour laquelle vous pouvez par exemple utiliser l’analyseur de journaux Microsoft.

Pour évaluer l’impact sur les champs de données volumineux, nous vous recommandons de tester vos processus dans les locataires Canary.

Cette page vous a-t-elle été utile ?

Obtenez l'aide dont vous avez besoin
Formation RPA - Cours d'automatisation
Forum de la communauté UiPath
Logo Uipath blanc
Confiance et sécurité
© 2005-2024 UiPath. All rights reserved.