为啥 redis 使用跳表(skiplist)而不是使用 red-black?
- 发表时间:2025-06-28 15:15:12
- 来源:
看到有人拿LevelDB/RocksDB和Redis的跳表来比较我是不太同意的,leveldb和rocksdb的跳表首先他们底层是LSM,跳表的目的本身是为了做memtable用,而跳表能提供很好的concurrency(lockfree简单),而红黑树写个lockfree可能写死还没有跳表性能强,所以用跳表是很情有可原的。
而redis这个最开始只有单线程的用跳表我个人还是认为是历史遗留问题(偷懒)。
推荐资讯
- 2025-06-19 19:15:11360 集团周鸿袆努力拼了 4 年,最后反而跌了近 4000 亿,其原因是什么?
- 2025-06-19 18:10:10golang和rust你选择哪个?
- 2025-06-19 18:15:11如何看待rust编写的zed编辑器?
- 2025-06-19 19:10:12上海首例认定提供爬虫程序抓取公开数据构成提供侵入计算机信息系统程序罪案,该案件有哪些细节值得关注?
- 2025-06-19 18:40:10大家猜猜伊朗的结局如何?
- 2025-06-19 19:05:11作为一个服务器,node.js 是性能最高的吗?
- 2025-06-19 18:25:11如何评价“寡姐”斯嘉丽·约翰逊的身材?
- 2025-06-19 17:55:12如何评价“寡姐”斯嘉丽·约翰逊的身材?
- 2025-06-19 19:05:11如何评价首个女性友好的编程语言HerCode?
- 2025-06-19 18:05:12网传厦门某国企研发部门要求每日考察后端 400 行,前端 1000 行代码量,如属实,这个考核合理吗?
推荐产品
-
为什么个人需要公网ip?
前段时间出门旅行了一周,回来后我老婆反映刷抖音网络卡,问我怎 -
Swift 和同时代的其他语言比起来怎么样?
我觉得Swift最强的是无缝集成C,制作完XCFramewo -
count(*) count(1)哪个更快?
团队 code review 时,一位同事把 count(* -
陌生人晕倒了,帮他拨打120后,病人不支付120出车费,这个费用谁来承担?
如果病人不出,那就是谁打的120谁出。 比出钱更郁闷的,是你
新闻动态
最新资讯

