Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Hi! I'm not able to connect with "heroku redis" on django

I've followed all the steps in the following video:

https://www.youtube.com/watch?v=fvYo6LBZUh8&t=166s

However, I'm not able to connect with "heroku redis", I am using celery to implement periodic tasks. The error is the following:

[2021-04-02 22:00:05,622: ERROR/MainProcess] consumer: Cannot connect to redis://:**@ec2-54-160-13-161.compute-1.amazonaws.com:12880//: Error while reading from socket: (10054, 'Se ha forzado la interrupción de una conexión existente por el host remoto', None, 10054, None).

So, any idea of what could be happening would be great. ¡Thank you so much!

like image 560
DANIEL ROSAS PEREZ Avatar asked Nov 07 '22 02:11

DANIEL ROSAS PEREZ


1 Answers

It's a good practice to set your redis URL in settings.py with OS os.environ.get('REDIS_URL')

Heroku rotates credentials periodically and updates applications where this datastore is attached.

Heroku recommends using encryption and thus a rediss:// URL instead of redis://

For celery, something like: CELERY_BROKER_URL = 'rediss://:{Password}@{Host}:{Port}'

Heroku command to get this url easy heroku redis:credentials REDIS_URL

Referer: https://devcenter.heroku.com/articles/heroku-redis#using-the-cli

like image 191
Marcos Paolo Avatar answered Nov 12 '22 13:11

Marcos Paolo