Ошибка H12 Heroku с Django bot scraping app
У меня есть бот, созданный на Django, и я хочу запустить его на Heroku. HTML-шаблон проекта прекрасно открывается в Heroku. В этом шаблоне есть форма и кнопка отправки. Когда я нажимаю на кнопку, то, что написано в форме, отправляется в главную функцию бота и используется при скраппинге. Проблема в том, что боту требуется около 4 минут для выполнения функций, а маршрутизатор Heroku выполняет запросы только в течение 30 секунд. Я искал тысячу решений в интернете, но сколько бы я не применял одно за другим, я не могу найти его. Я также связался со службой поддержки Heroku, и они сказали мне, что я могу использовать New Relic для длительных действий и использовать фоновый рабочий. Я попробовал настроить оба варианта и тоже не могу обойти ошибку H12. Может ли кто-нибудь подсказать мне, как правильно настроить рабочего и New Relic? Многие ответы, которые я нахожу по этому поводу, старые или я не могу оптимизировать их для своего проекта. Спасибо. (Sorry for my english btw)
worker.py
import urllib
from redis import Redis
from rq import Queue, Connection
from rq.worker import HerokuWorker as Worker
listen = ['high', 'default', 'low']
redis_url = os.getenv('REDISTOGO_URL')
if not redis_url:
raise RuntimeError('Set up Redis To Go first.')
url = urllib.parse(redis_url)
conn = Redis(host=url.hostname, port=url.port, db=0, password=url.password)
if __name__ == '__main__':
with Connection(conn):
worker = Worker(map(Queue, listen))
worker.work()
Procfile
web: newrelic-admin run-program gunicorn bot_app.wsgi
worker: python -u bot_app/worker.py
settings.py