Attempting to be a much faster alternative to redis. Currently in pre-alpha.
Lots of discussion on news.yc about why and if it's currently so fast. Some ideas:
- use of multiple threads and fibers
- use of io_uring, a new-ish IO framework for linux that requires pretty modern kernels
- shared-nothing architecture, which I think here means that the keys in the database are sharded to particular fibers so the program can avoid locks
To solve this, we used shared-nothing architecture, which allows us to partition the keyspace of the memory store between threads, so that each thread would manage its own slice of dictionary data.
note that it has a BSL license - Business Source License, which makes it not OSS, usable for playing around with but not for commercial work (without paying).