-
Notifications
You must be signed in to change notification settings - Fork 447
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
Redis Cluster support #102
Comments
maybe i can do something for that :) |
@byliu It's a TODO. Patches welcome :) |
@byliu If you really want to work on that, you're recommended to first discuss your API design here first to avoid any back and forth in the future :) Thanks |
I think this is duplicate of #43. |
@byliu, I think that no one has reviewed those. Because it is a huge task, and because there seem to be some opinionated things what should and what should not be done in client. You see, the Redis cluster support is mostly a client side thing. The Redis server does just a little bit, but most of the cluster support should be done in cluster client. Compare this to other clustered DBs that practically have just small requirements on clients — e.g. you can use same client (sharing most of the code) to connect both the cluster and the non-cluster. And there are a lot of things to consider when implementing Redis cluster client, please read this: redis/jedis#990 (comment). And then read this: You may see that the document above says:
That means that there is no authoritative document that tells us how to implement this. That also means that most cluster client implementations are incompatible with each other. If I was going to implement this, I would try to follow jedis as much as possible to get even some compatibility at least with one other client that has already implemented this to some degree (they also say that it is work-in-progress still). Now you see the scale of this problem. Would you like to do review on this? Add the documentation? Compare the implementation with other clients, like I think that you could start I hope that answers the question for "why". The answer for how is different:
Btw. I would love to have this as well. |
@byliu Base on lua-resty-redis I wrote a lua redis client that support redis cluster, hope can help you. standsun/rcluster.lua |
@standsun the implementation of redis cluster support is very good! |
Here recommends our redis cluster client: https://github.com/steve0511/resty-redis-cluster
|
how about this now? is it worked in cluster? |
The fact that neither Redis Cluster nor Redis Sentinel are supported is really unfortunate and basically makes this client unusable for serious production workloads. What good is having highly scalable OpenResty instances in something like k8s if they all talk to the single Redis instance? That redis goes down, the whole setup is gone. Are there any other OpenResty clients which do supported HA datastore which could in theory replace redis? I guess you could hack around using virtual IPs and keepalived failovers for Redis and/or mysql/postgres HA setups but these are old hacks not worthy of modern setups. |
I can't use lua-resty-redis to connect the redis cluster, right ?
if not, it's there any plan about redis cluster ?
what should i do for that ? I really need the redis cluster support .
The text was updated successfully, but these errors were encountered: