Приложение Flask не подключается к Heroku-Redis
Я посмотрел на похожие вопросы, которые задавали / отвечали здесь, но я не могу понять свою проблему. Мое приложение фляги, развернутое на heroku, не подключается к моему экземпляру heroku-redis. Вместо этого в моей логи геройки я получаю:
2018-05-10T20:36:12.520794+00:00 heroku[web.1]: Starting process with command `flask db upgrade; flask translate compile; gunicorn microblog:app`
2018-05-10T20:36:12.705812+00:00 heroku[worker.1]: Starting process with command `rq worker microblog-tasks`
2018-05-10T20:36:13.385204+00:00 heroku[worker.1]: State changed from starting to up
2018-05-10T20:36:15.060614+00:00 heroku[worker.1]: Process exited with status 1
2018-05-10T20:36:15.080485+00:00 heroku[worker.1]: State changed from up to crashed
2018-05-10T20:36:14.989923+00:00 app[worker.1]: Error 111 connecting to localhost:6379. Connection refused.
Почему мой работник так решил подключиться к моему локальному серверу redis? Мой профайл:
web: flask db upgrade; flask translate compile; gunicorn microblog:app
worker: rq worker microblog-tasks
Запуск "heroku config:get REDIS_URL" показывает, что env var REDIS_URL действительно установлен в heroku. Нужны ли для фоновых задач более одного динамометра? У меня нет проблем с моим приложением локально, просто при развертывании на героку.
Отдельный, но связанный с этим вопрос: каковы различия между redis, redistogo и rediscloud? Когда можно использовать каждый из них? Очень ценю любую помощь.
1 ответ
На самом деле в моей статье было упущение, извиняюсь за это.
Команда, которая запускает RQ-работника, должна включать URL-адрес подключения для Redis:
worker: rq worker -u $REDIS_URL microblog-tasks