ApsaraCache: A Redis branch originated from Alibaba Group

by laithshadeedon 10/17/2017, 11:53 AMwith 41 comments

by antirezon 10/17/2017, 2:11 PM

Hi all, I'm here in Hangzhou and had the pleasure to have a meeting with the team working at that. It's a great team and we'll work into merging stuff into upstream Redis when it makes sense. It's cool that companies other than Redis Labs are starting to contribute to the development!

Note that this branch is based on Redis 2.8 so of course porting stuff requires some work.

by gregoriolon 10/17/2017, 12:34 PM

Reminds me of HHVM: a specific solution developed by a specific team for their specific problem.

Might help Redis on the long run though: some ideas might be brought back to Redis, or at least it will bring some challenge to the devs.

Meanwhile, keep calm and use Redis ;-)

by danjfon 10/17/2017, 12:14 PM

30% faster by which measurements? Not much info on the docs....

by daotoadon 10/17/2017, 10:08 PM

This looks pretty interesting to me. But it leads to a lot of questions that are unanswered on the webpage.

The claims of 30% faster for a particular workload are reasonable, but what configuration is needed and what exact workload are we talking about? I'd love to see some benchmarking code.

What are the limitations imposed by running in memcached mode? Can you still do clustering?

What other changes are they planning? Site just says "many". Are we talking about memory allocation or persistence changes? Maybe additional interface compatibility modes? It's hard to bet on this when we don't have any idea what else it will bring to the table.

Where possible, I'd really like to see these improvements factored into distinct redis modules and made available as plugins to the core.

by stonewhiteon 10/17/2017, 12:34 PM

Goals: For both support Redis and Memcached protocol with no client code need to be modified. For highly stable and efficient in production environment.

At face value it appears to be a NIH driven development. It is not only a redis fork it is also a persistent memcached port, which is _only_ selectable on launch. Maybe there is a catch, but lack of a roadmap and/or design document certainly doesn't really help.

by pmontraon 10/17/2017, 12:17 PM

Why forking instead of submitting pull requests to Redis?

by arthursilvaon 10/17/2017, 12:26 PM

I wonder if Redis throughput is even a problem in practice. People usually add nodes to get more capacity (memory).

by mangatmodion 10/17/2017, 12:55 PM

One of the most useless FAQ I saw. I would have been more interested in knowing the improvements or changes made when compared to Redis. I had some trouble with large scale master slave Redis configuration. I was hoping if they have solved the issues.

by ddorian43on 10/17/2017, 2:17 PM

I think they are also working on: https://github.com/fastio/pedis (redis implemented on top of seastar-framework / scylladb )

by tyingqon 10/17/2017, 2:04 PM

Diffs of what they changed in /src from Redis 4.0: https://github.com/asaradiffs/apsaradiffs

by tuananhon 10/17/2017, 2:47 PM

documentation and readme of alibaba projects are scary. Have anyone use this or any alibaba open source projects for production?

by CyberDildonicson 10/17/2017, 12:22 PM

Does it still run on only one thread?

by rvnxon 10/17/2017, 1:54 PM

This project is some kind of a joke;

Look at the commit history; https://github.com/alibaba/ApsaraCache/commits/develop

15 are "writing of README / adding my copyright", and 2 are actual feature (and not long)