The difference between EXECUTIONS_PROCESS own and main

Good afternoon to the community. I have a question about EXECUTIONS_PROCESS own and main. In the documentation could not clearly understand which is better to use.
Please help me to understand the difference between these two modes.
As an example, the n8n is installed on a VPS,
CPU: 2
RAM: 2 GB
NVMe: 30 GB
On accessing the webhook, the workflow started and stopped with an error.
I. own mode:

  1. Will the same workflow start when accessing this webhook?
  2. Will another forkflow start when accessing another webhook?

II. main mode:

  1. When this webhook is accessed, will the second workflow start?
  2. Will forkflow run when accessing another webhook?
    Thanks.
    Regards, Aleksandr.

Information on your n8n setup

  • **n8n version:0.181.2
  • Database you’re using (default: SQLite):
  • **Running n8n with the execution process [own(default), main]:own
  • **Running n8n via [Docker, npm, n8n.cloud, desktop app]:Docker
2 Likes

Hi @asuhan,

On accessing the webhook, the workflow started and stopped with an error.
I. own mode:

  1. Will the same workflow start when accessing this webhook?

Yes. Each event received by a trigger node (like a webhook) will start their own workflow execution. It doesn’t matter if a previous execution ran into an error.

  1. Will another forkflow start when accessing another webhook?

Yes. A new process is spun up and your workflow execution takes place.

II. main mode:

  1. When this webhook is accessed, will the second workflow start?

Yes, just like in own mode a trigger event will start a new workflow execution.

  1. Will forkflow run when accessing another webhook?

Also yes, unless a currently running workflow execution is so demanding that it takes up all available resources. In this case, main mode could result in the bottleneck mentioned in our docs.

So you typically want main mode (everything running in one process) if you have simple and stable workflows that are unlikely to consume much resources and where a fast response time is key.

own mode on the other hand has a greater latency (because each execution needs to wait for a new process to start) and requires a few more resources, but you can make use of multi-core CPUs and improved platform stability. So you’d typically want this for more complex workflows where your focus is on stability.

2 Likes

Good afternoon, MutedJam. Thank you very much for the detailed explanation.
Regards, Aleksandr.

1 Like

You are most welcome, glad to hear this helped!