Fehler 111, der eine Verbindung zu localhost herstellt: 6379. Verbindung abgelehnt. Django Heroku
Ich kann Redis lokal ausführen und alles funktioniert.
Wenn ich jedoch auf heroku einsetze, erhalte ich den folgenden Fehler:
Error 111 connecting to localhost:6379. Connection refused.
Ich habe ein Procfile erstellt mit ...
web: gunicorn odb.wsgi --log-file -
worker: python worker.py
Ich habe eine worker.py-Datei ...
import os
import urlparse
from redis import Redis
from rq import Worker, Queue, Connection
listen = ['high', 'default', 'low']
redis_url = os.getenv('REDISTOGO_URL')
if not redis_url:
raise RuntimeError('Set up Redis To Go first.')
urlparse.uses_netloc.append('redis')
url = urlparse.urlparse(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()
Eine REDISTOGO_URL-Variable wird in der Heroku-Konfiguration angezeigt.
Redis to go ist ein installiertes Add-On für meine App.
Muss REDISTOGO_URL in settings.py definiert werden? Warum versucht Heroku, eine Verbindung zum lokalen Host herzustellen, wenn dieser nicht einmal in worker.py definiert is