A sample implementation of redis server which supports more than 100 concurrent clients using epoll.
Only a subset of commands are supported now. List of supported commands are
- ZADD.
- ZRANGE.
- ZCARD.
- ZCOUNT.
- SET.
- GET.
- SETBIT.
- GETBIT.
- SAVE.
Data structure used are
- Variation of avl-tree.
- Doubly-linked-list.
- Skip-list.
- BitArray.
All the above are implemented in the same node will host the data for the commands ZADD, ZRANGE, ZCARD, ZCOUNT. BitArray is used to host the data for SET,GET,SETBIT, GETBIT