Как мои веб-dynos Heroku выполняют код вне стандартного цикла HTTP-запроса? - PullRequest
0 голосов
/ 14 декабря 2018

Я запускаю приложение Django на Heroku с ведением журнала через Papertrail.

Я наблюдаю странное явление в моих журналах Papertrail, когда веб-дин исполняют код вне обычного цикла HTTP-запроса / ответа.

Чтобы объяснить более подробно, у меня есть функция, которая требует значительных ресурсов и занимает гораздо больше 30 секунд.Эта функция не запускается ни в каком обработчике представления Django.

Тем не менее, журналы бумажного следа из моих веб-dynos ясно показывают, что эта функция выполняется.

Я уверен, что эта функция нене запускается фактическим HTTP-запросом, потому что:

1) Я тщательно проанализировал URL-адреса, которые были вызваны за 30 секунд до этих журналов, и ни один из них не вызывает эту функцию 2) Функция выполняется длянамного дольше 30-х годов.Если бы он вызывался из HTTP-запроса, он завершился бы с ошибкой тайм-аута H12.

Как это возможно?

Я вставил ниже свой Procfile на случай, если это поможет добавитьконтекст.

web: gunicorn -t 6000 project.wsgi --log-file -
worker: python -u manage.py rqworker queue_name
worker-hp: python -u manage.py rqworker queue_name2
clock: python clock.py
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...