n8n + Argo = ❤️: Offloading CPU-Heavy Steps to Argo Workflows
Description and use
In n8n, CPU‑heavy Code nodes block workers and cause task aborts. Offloading these tasks to Argo Workflows frees workers, eliminates failures, and keeps the queue short, at the cost of longer overall job time.
Problem
CPU‑heavy Code nodes in n8n block worker slots and cause task aborts.
Outcome
Offloading CPU‑heavy steps to Argo frees n8n workers, eliminates task aborts, and keeps the queue backlog low, though overall job time increases due to serial execution within the runner.
Workflow
- Webhook triggers n8n workflow
- HTTP Request node submits Argo WorkflowTemplate with job parameters and n8n resume URL
- Wait node pauses execution until webhook callback
- Argo pod runs heavy job in node:26‑alpine container
- onExit handler posts status to n8n resume URL
- n8n resumes execution after callback
Evidence
A CPU‑heavy step does not belong in an n8n worker's Node.js event loop. Let n8n hand the job to Argo, release its worker slot with a Wait node, and resume when the Argo pod calls back.
At 30 CPU‑seconds per job, 9 of the 10 executions failed with Task execution aborted because runner became unresponsive.
The offloaded workflow has three nodes. The flow: Submit, Wait, Callback.
- Record date: 2026-10-12T07:55:57.627Z