为啥 redis 使用跳表(skiplist)而不是使用 red-black?

看到有人拿LevelDB/RocksDB和Redis的跳表来比较我是不太同意的,leveldb和rocksdb的跳表首先他们底层是LSM,跳表的目的本身是为了做memtable用,而跳表能提供很好的concurrency(lockfree简单),而红黑树写个lockfree可能写死还没有跳表性能强,所以用跳表是很情有可原的。
而redis这个最开始只有单线程的用跳表我个人还是认为是历史遗留问题(偷懒)。

看到有人拿LevelDB/RocksDB和Redis的跳表来比较我是不太同意的,leveldb和rocksdb的跳表首先他们底层是LSM,跳表的目的本身是为了做memtable用,而跳表能提供很好的concurrency(lockfree简单),而红黑树写个lockfree可能写死还没有跳表性能强,所以用跳表是很情有可原的。
而redis这个最开始只有单线程的用跳表我个人还是认为是历史遗留问题(偷懒)。


ZKP作为一个复杂的密码学应用,其底层还是建立在其他的bui...
只吞了init的。 剩下的那些玩意儿,只是套个壳。 比如...
记账,Todo,笔记,临时邮箱,这几个赛道简直卷的要死,哎 ...
咋说呢,欧美款型的裙子欧美身材穿才是薄纱,在大街上见过瘦到特...
如果是电影,那不一定 一个电影肯定是母带最清晰,这个大家都明...
话说这次超长途轰炸伊朗事情那么多,让好多人都忘了个细节,实战...
拍的土,贵。 拍的光鲜亮丽,便宜。 比如电视剧《庆余年》...
果然,有这一套。 腰肌劳损,本来就是小病。 但是这一...
我有10年的J***a开发经验,已经见证了从传统部署到容器化...
上次爬华山遇上一对夫妻,女的30出头,男的明显大些,女士穿白...
