Since Redis changed their License model, I am not really keen on using Redis in production any longer. They said, it’s only been done to make Cloud-Providers pay their fees, but in such situations I always rememember Star Wars Episode 5 - Vader to Lando Calrissian: “I am altering the deal, pray I don’t alter it any further.”
Therefore I searched for an alterantive backend. To my surprise, unlike Django, there is only one official backend for Django Channels: Redis. On the community project list, there was a Postgres backend. This is not really comprehensible to me, since Postgres is not an in-memory DB, therefore you had an additional delay for your websocket connections.
Therefore the question: Are there any alternatives to the Redis Backend for a in-memory database? Alternative example for Redis would be something like: Valkey
as i understand it, at least for now, you can use redis-py to connect to any relid-like server, well i’ve only seen it work with valkey buut i assume it works with others.
but this could change if the said servers make some breaking changes.
you can use django’s redis backend to connect to valkey, channels_redis ro connect to valkey, even celery’s redis backend will connect to valkey (tho this one breaks, but it’s a celery bug)
that being said, i packaged channels_valkey, which is an exact copy of channels_redis and it’ll stay an exact copy unless forced otherwised.