Я пытаюсь запустить рабочий процесс на Heroku без веб-процесса.
Это приложение с небольшим узлом express. Но это не работает, если у меня не запущен веб-процесс.
У меня есть Procfile с
worker node server.js
Но я получаю эту ошибку
heroku[router]: at=error code=H14 desc="No web processes running" method=GET path="/
Я хочу запустить его как рабочий процесс, поскольку рабочие не ограничены тайм-аутом 30 с и должны быть более эффективными. Эта конечная точка предназначена только для обработки 1 интенсивной задачи отдельно от нашего основного API, поэтому имеет смысл быть настроенной в качестве рабочего.
В соответствии с этим
https://help.heroku.com/PFSOIDTR/why-am-i-seeing-h12-request-timeouts-high-response-times-in-my-app
Вопрос 2: делегировал ли я долгосрочные задачи в качестве фоновых заданий? Если вы не можете заставить свой код работать быстрее и вам просто нужно больше времени (т. Е. Обрабатывать изображения, анализировать документы, выполнять вызовы API и т. Д. c), вы можете запускать их в качестве фоновых заданий на рабочих столах. Рабочие динамы не сталкиваются с тем же 30-секундным тайм-аутом, что и веб-динамы, что делает их идеальными для подъема тяжестей.
Все проблемы, которые я обнаруживаю при исправлении этой шкалы, говорят о масштабе в сети: 1
Так что это заставляет меня поверить, что express не может работать только как рабочий и должен быть веб-процессом?