Gestionnaire de tâches parallèles asynchrones utilisant les nœuds d'attente (Wait) - Workflow n8n

Apprenez à créer un flux de travail n8n asynchrone avancé en utilisant les capacités des nœuds Execute Workflow et Wait de n8n. Ce modèle est essentiel pour gérer les processus parallèles de longue durée dans n8n.

Aperçu du workflow

Prêt à automatiser ?

Téléchargez ce modèle de workflow n8n et commencez à l'utiliser instantanément.

À qui s'adresse cette solution ?

Utilisateurs avancés de n8n : Personnes ayant besoin de gérer des chemins d'exécution complexes et non linéaires.
Intégrateurs systèmes : Développeurs exécutant des traitements par lots ou des tâches ETL impliquant de longs temps d'attente pour des systèmes externes.
Optimisateurs de performance : Ceux qui cherchent à améliorer le débit de leur flux de travail n8n en exécutant des sous-tâches simultanément.
Spécialistes de l'automatisation n8n : Utilisateurs explorant les capacités avancées du nœud Wait de n8n et des appels asynchrones.

Vue d'ensemble

Lorsqu'il s'agit d'opérations de longue durée — telles que le traitement vidéo, le calcul intensif de données ou les appels API nécessitant un sondage (polling) — un flux de travail n8n linéaire standard peut être bloqué, risquant des dépassements de délai (timeouts) ou une consommation excessive du temps d'exécution. Ce flux de travail n8n spécialisé résout ce problème en utilisant un modèle asynchrone.

Ce modèle n8n robuste utilise le nœud Execute Workflow de n8n pour lancer des sous-tâches parallèles (travailleurs) et le puissant nœud Wait de n8n pour mettre en pause l'orchestrateur principal jusqu'à ce que ces sous-tâches soient terminées et aient rapporté via un webhook unique. Ceci permet à l'exécution principale d'attendre efficacement, en gérant de nombreux threads parallèles, en maximisant l'utilisation des ressources et en prévenant les timeouts. Si vous recherchez des modèles n8n fiables pour une automatisation haute performance, cette conception asynchrone est cruciale.

Fonctionnement

Ce flux de travail n8n fonctionne selon deux modes distincts : l'Orchestrateur (Flux Principal) et le Travailleur (Sous-Flux), en tirant parti des appels récursifs à la même définition de flux de travail n8n.

Flux de l'Orchestrateur (Initialisation et Collecte)


  1. Déclencheur Start n8n : Le processus commence avec le déclencheur manuel Start de n8n.

  2. Exécution Parallèle : Le flux de travail n8n se divise immédiatement, utilisant deux nœuds Execute Workflow (Appel 1 et Appel 2). De manière cruciale, le paramètre waitForSubWorkflow est défini sur false, rendant les appels non bloquants (asynchrones).

  3. Transmission des détails de reprise : Chaque appel transmet des paramètres spécifiques (wait durée et un suffixe webhook unique) au travailleur. L'URL du webhook est l'resumeUrl de l'exécution n8n principale, permettant au travailleur de rappeler.

  4. Attente des résultats : Le flux de travail n8n principal atteint ensuite deux nœuds Wait dédiés de n8n (Attendre Webhook 1 et Attendre Webhook 2). L'exécution s'arrête indéfiniment (ou pour une limite définie) jusqu'à ce que les flux de travail des travailleurs appellent avec succès les points d'entrée webhook respectifs (/call1 et /call2).

  5. Fusion et Synthèse : Une fois que les deux tâches parallèles ont signalé leurs résultats, le nœud Merge de n8n combine les charges utiles, et le nœud Sum de n8n calcule le résultat total des opérations parallèles.

Flux du Travailleur (Simulation et Rapport de Tâche)


  1. Déclencheur du Travailleur : Le sous-flux démarre via le déclencheur Call Entry Point de n8n (un Déclencheur Execute Workflow) lorsqu'il est appelé par l'Orchestrateur.

  2. Tâche longue simulée : Le nœud Wait Seconds de n8n suspend le flux pour la durée demandée par l'Orchestrateur (par exemple, 5 secondes pour Appel 1, 3 secondes pour Appel 2), simulant la tâche de longue durée.

  3. Rapport de retour : Le nœud Request Webhook de n8n utilise l'URL du webhook d'entrée pour envoyer une requête HTTP au nœud Wait du flux de travail n8n principal. Cet appel transporte la charge utile de résultat calculée, signalant au flux principal de reprendre.

Guide d'installation

Pour déployer ce modèle n8n et utiliser cette technique de traitement parallèle, suivez ces étapes :


  1. Importer : Copiez les données JSON fournies et importez-les directement dans votre instance n8n via le menu 'Nouveau' > 'Importer depuis JSON'. Cette importation unique définit à la fois la logique de l'Orchestrateur et celle du Travailleur.

  2. Vérification de l'auto-référence : Étant donné que ce flux de travail n8n s'appelle récursivement, assurez-vous que le paramètre workflowId dans les nœuds Execute Workflow Appel 1 et Appel 2 pointe vers l'ID du flux de travail nouvellement importé. Il devrait détecter automatiquement l'auto-référence, mais vérifiez si l'exécution échoue.

  3. Informations d'identification : Ce flux de travail n8n spécifique utilise des nœuds n8n de base (Manual Trigger, Wait, Execute Workflow, HTTP Request) et ne nécessite aucune information d'identification externe.

  4. Exécution : Exécutez manuellement le déclencheur Start de n8n. Observez comment le flux se divise, exécute les tâches temporisées de manière asynchrone, puis attend les webhooks pour reprendre et finaliser la sommation.

Détails du nœud

Start (Déclencheur n8n) : Un déclencheur manuel (Manual Trigger) utilisé uniquement pour lancer le flux de travail de l'orchestrateur n8n principal à des fins de test.
Call Entry Point (Déclencheur n8n) : Le déclencheur Execute Workflow Trigger dédié qui gère les appels entrants du flux principal. Il accepte les paramètres wait (nombre) et webhook (chaîne) nécessaires à la tâche du travailleur.
Appel 1 / Appel 2 (Nœud Execute Workflow n8n) : Ces nœuds sont cruciaux pour la parallélisation. Ils appellent le même flux de travail n8n (ce modèle) mais sont configurés avec waitForSubWorkflow: false pour garantir une exécution asynchrone. Ils transmettent des temps d'attente (wait) uniques et l'URL de rappel complète.
Wait Seconds (Nœud Wait n8n) : Situé dans le chemin du Travailleur, ce nœud n8n suspend l'exécution pendant une durée dynamique, définie par le paramètre d'entrée ={{ $('Call Entry Point').item.json.wait }}.
Request Webhook (Nœud HTTP Request n8n) : L'étape finale du flux du Travailleur. Il demande dynamiquement l'URL de reprise (resumeUrl, soit ={{ $('Call Entry Point').item.json.webhook }}) fournie par l'Orchestrateur, en transportant la charge utile de résultat pour reprendre le flux de travail n8n principal.
Wait for Webhook 1 / Wait for Webhook 2 (Nœud Wait n8n) : Situés dans le chemin de l'Orchestrateur, ces nœuds interrompent l'exécution, attendant spécifiquement un appel webhook correspondant (utilisant un suffixe comme /call1 ou /call2) pour livrer le résultat asynchrone avant que le flux de travail n8n puisse continuer.


  • Merge / Sum (Nœud n8n) : Nœuds d'agrégation standards utilisés pour combiner les résultats reçus par les nœuds Wait et calculer le total final, démontrant une collecte de données asynchrone réussie.

Workflows n8n associés

Gratuit

Nœuds: 8 Nœuds
Mis à jour: Décembre 26 2025
Voir tout

En vedette*