A little crappy implementation of Redis
start the server:
$ iex -S mix
connect to it:
$ redis-cli
- GET
- SET
- HGET
- HSET
- HGETALL
- HLEN
- HDEL
- HKEYS
- HMGET
- HEXISTS
- HINCRBY
- LPUSH
- RPUSH
- LPOP
- RPOP
- LLEN
- BLPOP
- BRPOP
- SADD
- SMEMBERS
- SISMEMBER
- PING
Strings (GET
, SET
) are partitioned across N servers where N = System.schedulers_online()
.
Each hash and list gets its own server, so operations on hash/list a
and hash/list b
happen concurrently.
Uses Thousand Island for TCP connection pooling.