Workflows utilise des quotas et des limites système pour maintenir une allocation équitable des ressources, éviter les surcharges de service et vous aider à gérer l'utilisation des ressources.
Les quotas et les limites du système sont similaires, mais diffèrent sur les points suivants :
- Les quotas ont des valeurs par défaut, mais vous pouvez généralement demander des ajustements.
- Les limites système sont des valeurs fixes qui ne peuvent pas être modifiées.
Google Cloud utilise des quotas pour garantir l'équité et réduire les pics d'utilisation et de disponibilité des ressources. Un quota limite la quantité d'une ressourceGoogle Cloud que votre projet Google Cloud peut utiliser. Les quotas s'appliquent à différents types de ressources, y compris les composants matériels, logiciels et réseau. Par exemple, ils peuvent limiter le nombre d'appels d'API à un service, le nombre d'équilibreurs de charge utilisés simultanément par votre projet ou le nombre de projets que vous pouvez créer. Ils protègent la communauté des utilisateurs deGoogle Cloud en empêchant la surcharge des services. Les quotas vous aident également à gérer vos propres ressources Google Cloud .
Le système Cloud Quotas permet d'effectuer les opérations suivantes :
- Surveiller votre consommation de produits et services Google Cloud
- Limiter votre consommation de ces ressources
- Demander des modifications de la valeur du quota et automatiser les ajustements de quota
Dans la plupart des cas, lorsque vous tentez d'utiliser une ressource plus que son quota ne le permet, le système bloque l'accès à la ressource et la tâche que vous essayez d'effectuer échoue.
Les quotas s'appliquent généralement au niveau du projet Google Cloud . Votre utilisation d'une ressource dans un projet n'affecte pas votre quota disponible dans un autre projet. Dans un projet Google Cloud , les quotas sont partagés entre toutes les applications et adresses IP.
Pour en savoir plus, consultez la présentation des quotas Cloud.
Des limites système s'appliquent également aux ressources Workflows. Elles ne peuvent pas être modifiées.
Quotas
Workflows applique les quotas suivants pour chaque projet Google Cloud. Vous pouvez augmenter ou diminuer ces quotas :
| Quota | Description | Valeur |
|---|---|---|
| Nombre total de workflows | Nombre maximal de workflows que vous pouvez déployer par projet | 10 000 |
| Exécutions simultanées | Nombre maximal d'exécutions de workflows actives par région et par projet. Les exécutions simultanées sont des exécutions qui ont démarré et qui ne sont pas encore terminées ou qui ont échoué, y compris celles qui sont en attente de rappels ou qui sont en veille. Une fois le quota atteint, et avec le backlog d'exécution activé par défaut (à quelques exceptions près), les exécutions sont créées à l'état |
10 000 |
| Exécutions en attente | Nombre maximal d'exécutions de workflow en attente par région et par projet.
Pour en savoir plus, consultez Gérer le backlog d'exécution. |
100 000 |
| Requêtes API Workflow | Nombre maximal de requêtes API (create, update, list, get, delete) provenant de tous les workflows de votre projet (par minute et par emplacement) |
1 200 |
| Requêtes Get API Execution | Nombre maximal de requêtes d'exécutions de workflow get pour tous les workflows de votre projet (par minute et par emplacement) |
6 000 |
| Requêtes List API Execution | Nombre maximal de requêtes d'exécutions de workflow list pour tous les workflows de votre projet (par minute et par emplacement) |
1 200 |
| Requêtes d'écriture API Execution | Nombre maximal de requêtes d'exécution de workflow create et cancel (y compris les exécutions déclenchées par Eventarc) pour tous les workflows de votre projet (par minute et par emplacement).
Si les exécutions déclenchées par Eventarc dépassent ce maximum, les événements sont relancés conformément à la règle de nouvelle tentative d'Eventarc. |
6 000 |
| Requêtes d'obtention des entrées d'étape de l'API Execution | Nombre maximal de requêtes vers get, une entrée d'étape d'une exécution de workflow (par minute et par emplacement) |
6 000 |
| Requêtes de l'API Execution pour lister les entrées d'étapes | Nombre maximal de requêtes d'entrées d'étape list à partir d'une exécution de workflow (par minute et par emplacement) |
1 200 |
| Requêtes d'exportation de données de l'API Execution | Nombre maximal de requêtes adressées à export data à partir d'une exécution de workflow (par minute et par emplacement) |
10 |
| Requêtes HTTP vers des points de terminaison de rappel | Nombre maximal de requêtes API SendHttpCallback effectuées sur les ressources d'exécution de tous les workflows de votre projet (par minute et par emplacement) |
1 500 |
| Requêtes de rappel de liste de l'API Execution | Nombre maximal de requêtes adressées aux rappels list à partir d'une exécution de workflow (par minute et par emplacement) |
300 |
Demandes d'augmentation de quota
Pour augmenter ou réduire les quotas, utilisez la console Google Cloud . Pour plus d'informations, consultez la page Demander un quota supérieur.
Surveiller l'utilisation des quotas
Vous pouvez interroger et surveiller les métriques d'utilisation des quotas. Pour obtenir un exemple, consultez Surveiller les métriques de quota, qui montre comment interroger le quota d'allocation total consommé pour Workflows. Pour plus d'informations sur la surveillance des métriques d'utilisation des quotas, consultez la page Représenter graphiquement et surveiller les métriques de quota.
Limites d'étapes
Workflows applique les limites d'étapes suivantes pour chaque workflow. Vous ne pouvez pas demander de modifier les limites suivantes :
| Limite | Description | Valeur |
|---|---|---|
| Attributions par étape | Nombre maximal d'attributions pouvant être effectuées en une seule étape | 50 |
| Conditions par contacteur | Nombre maximal de conditions pouvant être évaluées dans un seul bloc switch | 50 |
| Profondeur maximale de la pile d'appel | Nombre maximal de niveaux de fonctions d'appel (par exemple, lorsqu'un sous-workflow s'appelle lui-même ou appelle un autre sous-workflow, ou lorsque des appels de fonction de bibliothèque standard appellent à leur tour d'autres fonctions) | 20 |
| Étapes minimales | Nombre minimal d'étapes dans un workflow | 1 |
| Nombre maximal de pas | Nombre maximal d'étapes pouvant être effectuées dans une seule exécution de workflow Pour en savoir plus sur ce qui est considéré comme une étape, consultez Optimiser l'utilisation. |
100 000 |
Limites des étapes parallèles
Workflows applique les limites suivantes lors de l'utilisation d'étapes parallèles. Vous ne pouvez pas demander de modifier les limites suivantes :
| Limite | Description | Valeur |
|---|---|---|
| Branches par étape | Nombre maximal de branches acceptées dans une étape parallèle | 10 |
| Parallèle | Profondeur maximale d'imbrication des étapes parallèles | 2 |
| Branches et itérations simultanées | Nombre maximal de branches et d'itérations pouvant s'exécuter simultanément dans une même exécution de workflow avant que d'autres branches et itérations ne soient automatiquement mises en file d'attente pour attendre la fin d'un ou de plusieurs threads en cours d'exécution. Il n'y a pas de limite au nombre total de threads, mais toutes les autres limites s'appliquent. |
20 |
| Exceptions non interceptées dans une étape parallèle | Nombre maximal d'exceptions non gérées pouvant être générées lors de l'exécution du workflow (au total) | 100 |
Limites de ressources
Les limites d'utilisation suivantes s'appliquent à Workflows. Vous ne pouvez pas demander de modification de ces limites :
| Limite | Description | Valeur |
|---|---|---|
| Taille du code source | Taille maximale du fichier YAML ou JSON qui définit votre workflow | 128 Ko |
| Taille d'une réponse | Taille maximale d'une réponse HTTP (si elle est enregistrée dans une variable, la limite de mémoire pour les variables s'applique) | 2 Mo |
| Expiration du délai de la requête HTTP |
Durée maximale configurable pour une seule requête HTTP. Une requête qui dépasse son délai avant expiration échoue avec une erreur
|
1 800 secondes (30 minutes) |
| Longueur de l'expression | Nombre maximal de caractères dans une seule expression | 400 caractères |
| Taille des données | Taille maximale cumulée des variables, des arguments et des événements : | 512 Ko |
|
||
|
||
|
||
| Longueur maximale de la chaîne en octets avec encodage UTF-8 | 256 Ko | |
| Variables d'environnement | Taille maximale d'une chaîne de définition de variable d'environnement définie par l'utilisateur (KEY=value) ; vous pouvez définir jusqu'à 20 variables. |
4 Kio |
| Durée de l'exécution | Durée maximale (de l'heure de début à l'heure de fin) d'une exécution de workflow. Tout workflow qui dépasse cette limite se termine par une erreur de délai avant expiration. | 1 an |
| Conservation des exécutions | Durée de conservation maximale (après la fin de l'exécution d'un workflow) de l'historique et des résultats d'une exécution | 90 jours |
| Fenêtre de déduplication | Fenêtre de déduplication permettant d'assurer un traitement de type "exactement une fois" lors du déclenchement d'une exécution de workflow avec des événements | 24 heures |