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

ioredis -> iovalkey (Node.js client) #329

Open
mcollina opened this issue Apr 16, 2024 · 8 comments
Open

ioredis -> iovalkey (Node.js client) #329

mcollina opened this issue Apr 16, 2024 · 8 comments
Labels
major-decision-pending Needs decision by core team

Comments

@mcollina
Copy link

I've forked ioredis into iovalkey.

I'd love to move it to this org and/or maintain it under the org umbrella.

@madolson
Copy link
Member

On top of we are still unsure about what we're doing about clients, I want to finalize our governance doc (which will include maintainership of sub-projects) before we accept any donations of projects. We shared a draft amongst the TSC. I was supposed to post the public PR on Monday but I haven't incorporated their feedback yet <_<.

I like the naming though.

@mcollina
Copy link
Author

Let me know. I sincerely expect Redis 8 to break the protocol, making their clients only work with the official database. Elastic did the exact same move, and so far they seem to be following the same playbook.

@zuiderkwast zuiderkwast changed the title ioredis -> iovalkey ioredis -> iovalkey (Node.js client) Apr 18, 2024
@madolson
Copy link
Member

So I suppose the consensus is we will take it and move it under our umbrella. One point I do want to ask about is we would prefer only taking one client per language, and I see there are two popular Redis clients (node-redis and ioredis). Is there much consensus about which one of those is better adopted or preferred by the community?

@PingXie
Copy link
Member

PingXie commented Apr 23, 2024

I don't think we should set a limit on the number of clients per language. The client ecosystem is big and different clients can focus on different areas. For instance, some clients might optimize for performance while some others might have better support for observability. I think the key is "quality/reputation", which we could consider "outsourcing" to the community and rely on the community to keep us informed (so that we can also drop clients that are not longer maintained, for whatever reasons).

@PingXie
Copy link
Member

PingXie commented Apr 23, 2024

On the flip side though, I can also see the (valid) argument that "why don't we consolidate the efforts into one official client and make it the best all around?" I just don't know if this is feasible given the diverse requirements out there. Curious to hear the community thoughts.

@zuiderkwast
Copy link
Contributor

We have a decision that we will accept client forks under the valkey-io org. See https://github.com/orgs/valkey-io/discussions/362

Since we would prefer on one official client per language, the question is why not node-redis? Are the APIs and features very different and what are the main differences between ioredis and node-redis?

@mcollina
Copy link
Author

Currently, ioredis is downloaded 5m per week, while redis is downloaded 3m weekly.

Historically, ioredis was better. Now they are essentially on par. However, the redis one has a more complex codebase and it also support the proprietary features of redis.

If you plan to reimplement some of the non-oss add-ons, then possibly redis might make sense.

(I’m happy to help either way).

@zuiderkwast
Copy link
Contributor

That's what I needed to hear. I'm convinced. 😄

@valkey-io/core-team OK? If you agree, please 👍, otherwise 👎.

@zuiderkwast zuiderkwast added the major-decision-pending Needs decision by core team label Apr 24, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
major-decision-pending Needs decision by core team
Projects
None yet
Development

No branches or pull requests

4 participants