-
Notifications
You must be signed in to change notification settings - Fork 20
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add redis cluster broker and result-backend #9
Comments
@chandr-andr up |
@steigerung Hi! |
I'm interested in this. As I see it, implementing support for redis cluster in result backend should be trivial, because it doesn't use PUB/SUB. It only uses SET, EXISTS, GET and GETDEL which are all supported by redis cluster in Even if we only did this, it would still be an improvement, because there are multiple brokers available for I'm willing to implement changes for result backend to support cluster mode. Expect a PR in a few days :-). |
Hi @s3riusI |
Hi! I guess we can safely release it now. Because these changes are backward compatible. |
Are there any plans to create a ListQueueBroker and a PubSubBroker with cluster support? |
Sure. I'm not certain about PubSub support. Because in cluster mode it's a bit tricky. But anyway it sounds like a good idea. |
Adding the Redis Cluster broker and result-backend out of the box would be nice advantage, relative to alternative task queues.
But wouldn't it be redundant?
If this idea seems relevant to you, there are some implementation issues.
Using redis-py there is no problem with developing a result-backend, but there are some problems with the broker, more specifically redis.asyncio.RedisCluster client doesn't support pubsub, so it seems the only way to implement AsyncBroker correctly is to initialize redis.asyncio.RedisCluster and subscribe on tasks kicks channel in any master-node through redis.asyncio.Redis, as long as it is alive and switch to another if the current master-node is not working.
The text was updated successfully, but these errors were encountered: