Воркеры — то, что крутится, пока вы спите
Любая автоматизация упирается в вопрос «кто это запустит». У нас запускают воркеры: фоновые исполнители, по одному на каждый повторяющийся процесс. Каждую секунду они проверяют, не пора ли.
- Один цикл на всё.Ночная выгрузка, входящие сообщения, вебхуки CRM, напоминания агентов — всё идёт через один и тот же механизм.
- Без ручного труда.Десятки тысяч прогонов в сутки. Никто не запускает их руками и не следит за часами.
- Сам скажет, если что.Упал — выключился и написал в личку, почему. Чужой сбой — подождал и повторил.
Три повода для запуска
Воркер привязан к одному из трёх поводов. Всё остальное — интервал, таймаут, число исполнителей — общее.
- Сценарий стартует сам: раз в секунду, раз в 15 секунд, раз в сутки
- Ночная выгрузка расходов, утренняя сводка, проверка сроков
- На проде интервалы от 1 секунды до 24 часов
- Вебхук от Bitrix24, amoCRM или Salebot сначала ложится в очередь
- Воркер берёт задачи по одной и исполняет сценарий
- Перезапуск сервера очередь не теряет
- Сообщение боту или в личный аккаунт Telegram, MAX, ВКонтакте
- Воркер слушает канал и заводит задачу
- Он же следит, что подключение к мессенджеру живо
Повторы у задач из очереди не слепые: упавшая задача не исполняется заново сама, иначе клиент получил бы сообщение дважды.
Ошибка — это событие, а не тишина
Самое дорогое в автоматизации — узнать о поломке через неделю от клиента. Поэтому у воркеров любая ошибка заканчивается сообщением человеку.
- 1Каждый прогон записан.Сколько шёл, чем кончился, что вернул. Кнопка «Текст» показывает суть в десять строк вместо простыни JSON.
- 2Упал — выключился.Воркер сам гаснет, задача помечена ошибкой. Ничего не уходит клиенту второй раз.
- 3Причина — в личку.Сообщение в MAX ответственному: какой воркер, какой блок, какое поле. Не «что-то сломалось», а что именно.
- 4Чужой сбой — не наш стоп.Внешний сервис не ответил или попросил подождать: воркер делает паузу 5, 10, 20 секунд и повторяет. Он не выключается, но команда получает предупреждение.
- 5Осознанный отказ — не авария.Сценарий сам решил, что задача недоставляема, и закрыл её с разбором. Воркер работает дальше.
Зависшие задачи автоматически не перезапускаются: их видно на экране очередей, и человек решает — вернуть в работу или закрыть.
Сколько тянет и как остановить
Нагрузка регулируется на каждом воркере отдельно, а останавливается всё одним переключателем — без перезапуска сервера.
- Параллельно.У воркера может быть несколько исполнителей, на проде до десяти. Каждый берёт свою задачу, друг другу не мешают.
- С пределами.Таймаут на каждый прогон, интервал между запусками. Зависший вызов не держит остальных.
- Тремя рубильниками.Тумблер воркера. Выключенный раздел проекта останавливает его воркеров. Общий рубильник на время выката: новых прогонов не берёт, начатые доживают.
- Интервал: секунда, минута, сутки
- Очередь: вебхуки Bitrix24, amoCRM, Salebot
- Событие: Telegram, MAX, ВКонтакте
- Упал — выключился, второй раз не отправит
- Причина в личку: какой блок, какое поле
- Журнал каждого прогона
- До 10 параллельных исполнителей
- Таймаут на каждый прогон
- Рубильник на время выката
- «Запустить сейчас» с результатом в ответ
- Очереди и зависшие задачи на экране
- Теги, поиск, ошибки отдельно
Панель воркеров в проекте и у администратора
Всё управление — в браузере. Программист не нужен ни чтобы включить воркер, ни чтобы понять, почему он встал.
Администратору — сводка по всем проектам: сколько воркеров включено, общий рубильник, включить или выключить всё разом.
Девять типов — пять ролей
Тип воркера задаёт, откуда он берёт работу. Для команды это пять понятных ролей.
Цифры — число воркеров каждой роли на проде на 28.09.2026.
Что нужно от вас
От вас — ничего. Воркеры заводятся вместе со сценариями и интеграциями, интервалы и уведомления настраиваем при внедрении.
Показать этот модуль на вашей задаче?
За 30 минут посмотрим, как он ляжет на ваш процесс, и скажем, что включается сразу, а что требует настройки.