我试用了一个声称比 Redis 更快的 KeyDB!

我发现了一个叫做KeyDB的有趣替代Redis的东西,所以我想试试看。

文档:https://keydb.dev/
GitHub:https://github.com/JohnSully/KeyDB

据说,仅仅提到Redis的fork,它的使用方式与普通的Redis没有什么区别。据说通过进行fork,使得更快速的开发成为可能。

测量

用于性能测量的工具是redis-benchmark。

请参考以下链接:http://mogile.web.fc2.com/redis/redis409/topics/benchmarks.html


redis-benchmark --csv -r 6

由于KeyDB也提供了Docker,所以我决定使用Docker准备Redis。


docker run -p 6379:6379 -d eqalpha/keydb # KeyDB
docker run -p 6379:6379 -d redis # redis

结果 –


$ redis-benchmark --csv -r 6
"PING_INLINE","9935.42"
"PING_BULK","10183.30"
"SET","10034.12"
"GET","10332.71"
"INCR","10125.56"
"LPUSH","8552.12"
"RPUSH","9554.75"
"LPOP","8560.91"
"RPOP","10690.61"
"SADD","9711.57"
"HSET","9462.53"
"SPOP","9739.00"
"LPUSH (needed to benchmark LRANGE)","8738.20"
"LRANGE_100 (first 100 elements)","8354.92"
"LRANGE_300 (first 300 elements)","5207.79"
"LRANGE_500 (first 450 elements)","3657.11"
"LRANGE_600 (first 600 elements)","2588.73"
"MSET (10 keys)","6128.58"

$ redis-benchmark --csv -r 6
"PING_INLINE","12020.67"
"PING_BULK","12503.13"
"SET","12301.64"
"GET","11416.83"
"INCR","10298.66"
"LPUSH","10270.10"
"RPUSH","11256.19"
"LPOP","11695.91"
"RPOP","12367.05"
"SADD","13319.13"
"HSET","10828.37"
"SPOP","13586.96"
"LPUSH (needed to benchmark LRANGE)","12948.34"
"LRANGE_100 (first 100 elements)","10706.64"
"LRANGE_300 (first 300 elements)","5632.22"
"LRANGE_500 (first 450 elements)","4065.21"
"LRANGE_600 (first 600 elements)","3404.37"
"MSET (10 keys)","11071.75"

redis的性能比较好吧,怎么回事啊…