Типовой сценарий · n8n · нагрузка

n8n под нагрузкой: очередь, воркеры и мониторинг

Пока сценариев мало, n8n в одном процессе справляется. Когда вебхуков и тяжёлых запусков становится много, запуски копятся, редактор тормозит, а сбой одного сценария задевает остальные.

Контекст задачи

n8n на своём сервере по умолчанию работает в одном процессе: он принимает вебхуки, запускает сценарии по расписанию и показывает редактор. На десятке сценариев это незаметно, но в пиковые часы, при массовых рассылках или обработке файлов запуски начинают ждать друг друга, а интерфейс отвечает с задержкой. Для такой нагрузки в n8n есть режим очереди: основной процесс принимает события и ставит запуски в очередь, а выполняют их отдельные процессы-воркеры, которых можно добавлять. Сценарий описывает перевод уже работающего n8n в этот режим вместе с мониторингом, в отличие от базовой установки, где n8n поднимается с нуля в одном процессе.

Пример схемы n8n в режиме очереди: вебхуки и таймеры приходят в основной процесс, он ставит запуски в очередь Redis, воркеры выполняют их и пишут результат в PostgreSQL, мониторинг следит за очередью
Основной процесс только принимает события, выполняют сценарии воркеры, которых можно добавлять.

Вход

Работающий n8n и доступ к серверу, список сценариев с частотой запусков и пиками, сценарии с файлами и долгими шагами, текущая база (часто SQLite), требования к времени ответа вебхуков и к хранению истории запусков.

Логика

Сначала замеряем нагрузку и находим узкие места: долгие запуски, тяжёлые файлы, сценарии, которые стоит разделить. Затем переносим данные на PostgreSQL: режим очереди на SQLite n8n не рекомендует. Поднимаем Redis и включаем EXECUTIONS_MODE=queue: основной процесс принимает таймеры и вебхуки и передаёт номер запуска в Redis, свободный воркер забирает его, берёт сценарий из базы, выполняет и записывает результат. Всем процессам выдаётся один ключ шифрования, иначе воркеры не прочитают учётные данные. Число параллельных запусков на воркер задаём флагом concurrency, по умолчанию их 10. При большом потоке входящих запросов добавляем отдельные процессы для вебхуков за балансировщиком. Хранить файлы на диске в режиме очереди n8n не умеет, поэтому сценарии с файлами переводим на хранение в базе.

Интеграции

n8n (основной процесс, воркеры, при необходимости процессы вебхуков), Redis, PostgreSQL, Docker Compose, обратный прокси с HTTPS, метрики Prometheus и Grafana или простые проверки по расписанию, оповещения в Telegram.

Результат

Пики разбирают воркеры: приём вебхуков не ждёт тяжёлых запусков, редактор не тормозит, а мощность добавляется новым воркером, а не переездом на другой сервер. Рост очереди и сбои видны до того, как их заметят клиенты.

Пример панели мониторинга n8n в режиме очереди: запуски в ожидании, выполняемые запуски, ошибки за час и число исправных воркеров, линейный график запусков по часам
Метрики очереди показывают нагрузку раньше, чем её заметят клиенты.

Что получает бизнес

Рост числа сценариев больше не упирается в один процесс. Когда нагрузка растёт, добавляется ещё один воркер на том же или соседнем сервере, а когда спадает, лишние можно остановить. Тяжёлый сценарий с файлами больше не мешает приёму заявок с сайта, потому что их выполняют разные процессы.

Мониторинг строится на том, что n8n отдаёт сам. Воркеры отвечают на проверки /healthz и /healthz/readiness (вторая показывает, готовы ли соединения с базой и Redis), а основной процесс отдаёт метрики очереди: сколько запусков ждёт, сколько выполняется, сколько завершилось ошибкой. По этим цифрам срабатывают оповещения в Telegram: очередь растёт, воркер не отвечает, ошибок больше обычного. Адрес /metrics открывается только для внутренних сервисов, не в интернет.

Отдельно продумываются обновления и восстановление: воркеры останавливаются мягко и успевают закончить текущие запуски, резервные копии базы и сценариев идут по расписанию, а порядок перезапуска записан в короткой инструкции. Некоторые возможности, например просмотр воркеров в интерфейсе, несколько основных процессов или хранение файлов в S3, n8n даёт только в платных редакциях, поэтому до старта сверяем, что нужно именно вам.

Кому подходит сценарий

Сценарий подходит командам, у которых n8n уже стал рабочей системой: десятки активных сценариев, приём заявок и заказов через вебхуки, массовые рассылки, обработка файлов и ИИ-шаги. Если n8n только планируется, начать лучше с базовой установки, а режим очереди включить, когда появится нагрузка. Конкретная схема (сколько воркеров, нужны ли отдельные процессы вебхуков, как хранить файлы) подбирается под объём запусков и сервер.

Похожая задача?

n8n под нагрузкой: очередь, воркеры и мониторинг

Опишем, как адаптировать этот сценарий под ваши данные и системы. Без обязательств.

Получить план автоматизации