Skip to content
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

Plan for cluster support #574

Open
crzidea opened this issue Apr 18, 2014 · 41 comments

Comments

Projects
None yet
@crzidea
Copy link

commented Apr 18, 2014

Is there any plan for cluster support?
Redis 3.0.0 beta has been released for a month.

@anagorsky

This comment has been minimized.

Copy link

commented Apr 18, 2014

+1

1 similar comment
@haio

This comment has been minimized.

Copy link

commented Apr 18, 2014

👍

@asilvas

This comment has been minimized.

Copy link

commented Jun 13, 2014

Anyone developing this support?

@albarra

This comment has been minimized.

Copy link

commented Jun 13, 2014

May be we have to re-build the concept of this module.
Today is completly deprecated and still it is recommended by Redis.IO site.

The problem with "cluster support" is that redis still doesn't have it on stable versions. It's on development.

The appropiate issue will be "plan for redis sentinel", i think...

@andzdroid

This comment has been minimized.

Copy link

commented Jun 13, 2014

I've made a compatible wrapper over node_redis for redis clusters: https://github.com/koyoki/redis-party

@brycebaril

This comment has been minimized.

Copy link
Member

commented Jun 13, 2014

@albarra -- this is not deprecated at all. Chill out -- it is maintained and we're working on updating the nature of the library to be more compatible with things like sentinel and cluster.

As mentioned in other issues, Redis Sentinel and Redis Cluster support will require removing the reconnection logic from the core of this library. There is a refactor branch where I've started that work and have been rewriting the tests in a way that doesn't also combine the tests with the connection logic.

Once that is done all connection logic (sentinel, cluster, or the existing legacy reconnection logic) will all be available as separate wrappers for this library.

@albarra

This comment has been minimized.

Copy link

commented Jun 13, 2014

Sorry, what i meant is that in certain situations is deprecated, since it doesn't support HA.
Of course, if you have only one instance of Redis, it's the ideal module. It works perfect! 👍 , and as you said, the module has continuous updates and support. :)
greetings!

@vivekkrbajpai

This comment has been minimized.

Copy link

commented Oct 28, 2014

@mc0

This comment has been minimized.

Copy link

commented Nov 15, 2014

I wrote a redis cluster implementation that is similar to Antirez's ruby version. It simply wraps this redis module but I'd like to see it included with this module if possible. The only change I had to make to redis/index.js1 was to make the raw error object get passed to the on_error method, pass that along when we emit the error, and allow RedisClient#max_attempts to be 0.

I know that @brycebaril is working on a refactor branch that removes the connection logic but I'm not entirely sure that that is required for getting cluster support. I'm sure I just missed the discussion on that but is there a summary for why?

@crzidea

This comment has been minimized.

Copy link
Author

commented Nov 15, 2014

@mc0
I guess connection shuold be keeped instead of just close it on_error.

@danmaz74

This comment has been minimized.

Copy link

commented Jan 16, 2015

@brycebaril any updates regarding Redis cluster support? I read there was a refactoring going on, but didn't see any recent updates. Thanks!

@jadbox

This comment has been minimized.

Copy link

commented Feb 3, 2015

+1 for cluster support

@MetaThis

This comment has been minimized.

Copy link

commented Mar 2, 2015

+1

@shaharmor

This comment has been minimized.

Copy link

commented Apr 1, 2015

Redis cluster is out now, any chance to implement support for it now?

@thelinuxlich

This comment has been minimized.

Copy link

commented Apr 1, 2015

+1

3 similar comments
@lemonizer

This comment has been minimized.

Copy link

commented Apr 6, 2015

👍

@sebbo2002

This comment has been minimized.

Copy link

commented Apr 16, 2015

+1

@julien51

This comment has been minimized.

Copy link

commented Apr 27, 2015

+1

@genediazjr

This comment has been minimized.

Copy link

commented Apr 29, 2015

@mranney any comments sir?

@henryoswald

This comment has been minimized.

Copy link

commented Apr 29, 2015

We (sharelatex.com) would be interested in sponsoring this feature if that helps. I am not sure how much work it would be to develop, potentially a few other companies would pitch in?

@thelinuxlich

This comment has been minimized.

Copy link

commented Apr 29, 2015

There are already two alternative modules which support Redis 3.0 cluster and are better performant than node-redis:

https://github.com/thunks/thunk-redis
https://github.com/luin/ioredis

I'm using thunk-redis and can confirm the cluster feature is working well

@henryoswald

This comment has been minimized.

Copy link

commented Apr 29, 2015

Very interesting, thanks!

On Wed, Apr 29, 2015 at 12:24 PM, Alisson Cavalcante Agiani <
notifications@github.com> wrote:

There are already two alternative modules which support Redis 3.0 cluster
and are better performant than node-redis:

https://github.com/thunks/thunk-redis
https://github.com/luin/ioredis


Reply to this email directly or view it on GitHub
#574 (comment).

Henry Oswald
shareLaTeX.com co-founder

@simontabor

This comment has been minimized.

Copy link

commented Jul 13, 2015

I'd be happy to try and manage getting cluster support into node_redis. I think I've got a pretty good base at https://github.com/gosquared/redis-clustr (stable in production with many ops). If anyone has suggestions/would like to jump in then go ahead :)

@vivekkrbajpai

This comment has been minimized.

Copy link

commented Aug 3, 2015

👍

@blainsmith

This comment has been minimized.

Copy link
Contributor

commented Aug 15, 2015

In order to better support this project and its new group of collaborators under a new org we are trying to clean up and close issues older than 6 months. Your issue may have been fixed since the issue was open, however, if you are still experiencing a problem please re-open this issue and we will label it accordingly.

@blainsmith blainsmith closed this Aug 15, 2015

@BridgeAR

This comment has been minimized.

Copy link
Member

commented Sep 13, 2015

Reopening this as it is not resolved. @simontabor would you still be up to try getting cluster support into node_redis?

@simontabor

This comment has been minimized.

Copy link

commented Sep 23, 2015

Yeah. Will need to find some time - hopefully soon!

@BridgeAR

This comment has been minimized.

Copy link
Member

commented Sep 23, 2015

@simontabor Sounds good 👍

@BridgeAR

This comment has been minimized.

Copy link
Member

commented Jan 5, 2016

I'd like to keep cluster as a separate module but usable as default from node_redis. Right now I'm trying to clean up all other things and this is not soon on my list, even though I think it's one of the most important things to be included soon.

So if someone is willing to help out, that would be great! @simontabor you said you won't have the time for it soon but if I remember correct you have a cluster module that could be moved to NodeRedis, if you agree, right?

@simontabor

This comment has been minimized.

Copy link

commented Jan 5, 2016

I've left GoSquared now, and the repo is under that organisation (https://github.com/gosquared/redis-clustr). I think they'd be willing to move the repo to NodeRedis org so long as there's a credit given to them, alternatively NodeRedis could quite easily fork the repo and continue to develop and maintain it over there.

This was referenced Mar 22, 2016

@ohjames

This comment has been minimized.

Copy link

commented Nov 23, 2016

The top of the readme states: "complete and feature rich Redis client", with the absence of cluster support I might debate the usage of the world "complete" here.

@gsccheng

This comment has been minimized.

Copy link

commented Feb 9, 2017

... and now I have to migrate to ioredis: https://github.com/luin/ioredis . It is "full-featured" that supports Cluster, Sentinel, and Pipelining.

@BrainBacon

This comment has been minimized.

Copy link

commented Feb 10, 2017

@gsccheng In the same boat here. I was definitely under the impression that clustering would work.

@mvtcode

This comment has been minimized.

Copy link

commented Feb 27, 2017

I using redis 3.2.8 and setup nodes cluster
using this module not working:

{ ReplyError: MOVED 8238 127.0.0.1:6380
at parseError (/home/tanmv/test/node_modules/redis-parser/lib/parser.js:181:12)
at parseType (/home/tanmv/test/node_modules/redis-parser/lib/parser.js:291:14)
command: 'SET',
args: [ 'test-4', 2017-02-27T07:39:07.656Z ],
code: 'MOVED' }

{ ReplyError: MOVED 8238 127.0.0.1:6380
at parseError (/home/tanmv/test/node_modules/redis-parser/lib/parser.js:181:12)
at parseType (/home/tanmv/test/node_modules/redis-parser/lib/parser.js:291:14) command: 'GET', args: [ 'test-4' ], code: 'MOVED' }

I have found the module "Redis Cluster Client" (https://www.npmjs.com/package/redis-node-cluster), because before that I have not used so I parked it.
The ruby programming language support has examples in https://github.com/antirez/redis-rb-cluster

@sam2x

This comment has been minimized.

Copy link

commented May 25, 2017

no news about this ? so if I want to use the cluster feature I need to migrate to ioredis ?

@simontabor

This comment has been minimized.

Copy link

commented May 25, 2017

my earlier comment is still 100% relevant: #574 (comment). redis-clustr is stable and actively in-use with some pretty big clusters

@sam2x

This comment has been minimized.

Copy link

commented May 25, 2017

Ho great, it's a wrapper to this lib "It tries to be as unobtrusive as possible - mimicing the behaviour of the node_redis client.". Thanks @simontabor for the feedback. Will give a try

@Somebi

This comment has been minimized.

Copy link

commented Apr 11, 2019

Indeed, have to move to ioredis package because of this. Didn't knew this package is not supporting clustering. It's a fail...
Why this is a recommended package?
Have to add a bold not in the read me. That this package is not supporting clusters feature. To stop confusing end users.

@thelinuxlich

This comment has been minimized.

Copy link

commented Apr 18, 2019

last update was almost a year ago so I think it's safe to say this library is deprecated.

@stockholmux

This comment has been minimized.

Copy link
Member

commented Apr 18, 2019

@thelinuxlich nope. Not deprecated. We have updates that come from upstream (redis-parser and redis-commands) - it just doesn't show in this repo.

@Somebi

This comment has been minimized.

Copy link

commented Apr 19, 2019

Eventually i have migrated to ioredis and successfully integrated sharded cluster. Suggest using ioredis and this team to move to ioredis team, to help them if possible.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.