网易首页 > 网易号 > 正文 申请入驻

Redis单线程是缺陷还是设计智慧?

0
分享至

「Redis跑在一个线程上。现代服务器有64、96甚至128个核心。Redis只用其中一个。这是严重的架构限制。」——这话你一定听过,通常来自刚买了64核服务器、发现63个核心在摸鱼的工程师。

但抱怨归抱怨,结论错了。Redis的单线程不是技术债,是Salvatore Sanfilippo在2009年西西里岛家里写下的第一行代码时就定下的死规矩。理解这个选择,等于理解高性能系统设计的核心矛盾:你以为的瓶颈,往往不是真的瓶颈。


一、起源:一个创业公司逼出来的内存数据库

2009年,Sanfilippo的创业项目LLOOGG需要实时展示网站访客数据。当时Google Analytics还没有实时功能(要到2011年才上线)。技术卡点很具体:MySQL扛不住每秒几百次的列表推入弹出,每次还要毫秒级响应。

他在家先用Tcl写了个原型,300行,叫LMDB(LLOOGG Memory Database)。能跑。重写为C语言,取名Redis(Remote Dictionary Server)。

关键决策就在这时做出:单线程,事件循环驱动。不是没能力写多线程,是故意不写。

二、单线程的真正代价:不是算力浪费,是协调成本

现代服务器的核心数确实在暴涨。但Redis的操作粒度是微秒级——一次GET或SET在内存里完成的速度,比线程切换、锁竞争、上下文保存恢复的开销快一个数量级。

多线程的隐性账单:

• 锁:保护共享状态需要互斥,获取释放锁本身就是操作
• 缓存失效:多核之间的缓存一致性协议拖慢访问
• 上下文切换:操作系统调度线程的固定开销
• 复杂度:死锁、竞态条件、调试地狱

Redis的策略是结构性消除这些成本。没有锁,因为没有并行执行。没有竞态条件,因为命令严格串行。事件循环(kqueue/epoll/select)用单个线程处理所有网络I/O,没有「一个连接一个线程」的内存膨胀。

Sanfilippo的原话:「简单就是性能。」

三、诚实的代价:慢命令会阻塞一切

设计没有免费午餐。单线程的代价是:一个慢命令,全站停摆。

典型案例:KEYS命令扫描全库。生产环境百万键的数据库上执行,服务器在扫描期间完全无响应。不是延迟变高,是彻底卡住。凌晨3点的事故单,通常来自没读文档的工程师用了KEYS而不是SCAN。

这是设计层面的取舍,不是bug。文档明确警告,但人总会犯错。Redis Cluster和后来的多线程I/O(6.0版本)是部分回应,但核心命令执行保持单线程——因为换多线程的代价高于收益。

四、为什么这个选择至今成立

十五年过去,硬件天翻地覆,Redis的单线程核心没变。原因:

• 内存带宽才是瓶颈:现代CPU算力过剩,但内存子系统的并行度有限
• 网络延迟掩盖单线程:大多数Redis部署的延迟来自网络往返,而非命令执行
• 水平扩展更简单:多实例分片比多线程共享状态更容易预测和调试
• 代码可维护性:核心代码量小,bug少,新特性添加快

6.0版本引入的多线程I/O只处理网络读写,命令执行仍单线程。这是务实的修补,不是架构转向。

五、给系统设计的启示

Redis的案例戳破了一个迷思:核心数不用满就是浪费。真正的浪费是为用满核心而支付的协调成本。当操作粒度足够细、共享状态足够多时,串行执行可能比并行更快。

判断标准:如果锁竞争和上下文切换的时间接近或超过实际计算时间,多线程就是负优化。这个阈值在内存数据库里来得特别早。

实用建议:

• 监控慢查询日志,KEYS/FLUSHALL/SORT等命令设告警
• 大键值拆分,避免单个操作耗时过长
• 考虑Redis Cluster或代理层分片,而非单实例硬扛
• 评估是否需要Redis:读多写少且能容忍秒级延迟的场景,也许S3+CloudFront更便宜

单线程不是 Redis 的临时补丁,是贯穿其设计哲学的核心选择。它牺牲了垂直扩展的极限,换取了可预测的性能和极简的并发模型。当你的系统需要处理百万级键的亚毫秒响应时,这种取舍的价值才会真正显现。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
新冠后遗症对人体的最大影响,很多人深受其害,有些人还不自知

新冠后遗症对人体的最大影响,很多人深受其害,有些人还不自知

呼吸科大夫胡洋
2026-02-22 11:39:12
这是迄今为止,我见过身材最美的女人之一,不接受反驳

这是迄今为止,我见过身材最美的女人之一,不接受反驳

小椰的奶奶
2026-04-11 12:33:07
宝马捅破天了!以“车还没造,就路测几百万公里”的文案暗讽同行

宝马捅破天了!以“车还没造,就路测几百万公里”的文案暗讽同行

火山詩话
2026-04-16 06:54:55
马英九批萧旭岑“见利忘义”,萧旭岑回应,有人叫板马英九?

马英九批萧旭岑“见利忘义”,萧旭岑回应,有人叫板马英九?

DS北风
2026-04-18 22:20:05
曝王思聪近况:暴瘦脱相 秃顶脱发,拒付200万后,黄一鸣频繁发声

曝王思聪近况:暴瘦脱相 秃顶脱发,拒付200万后,黄一鸣频繁发声

东方不败然多多
2026-04-18 15:31:29
郑丽文返台后,岛内民调曝光,位列倒数第三,与沈伯洋几乎持平?

郑丽文返台后,岛内民调曝光,位列倒数第三,与沈伯洋几乎持平?

许穋很机智
2026-04-19 00:49:47
61岁张曼玉现身北京,脸肿鼻子尖,被嘲巫婆不敢认,一代女神老了

61岁张曼玉现身北京,脸肿鼻子尖,被嘲巫婆不敢认,一代女神老了

白面书誏
2026-04-17 18:35:13
出战15分钟正负值-22!勇士输球后揪出最大罪臣,顶薪合同恐悬了

出战15分钟正负值-22!勇士输球后揪出最大罪臣,顶薪合同恐悬了

兵哥篮球故事
2026-04-18 14:53:45
张柏芝变化太大了,都认不出来了,果然人都会变老,明星也不例外

张柏芝变化太大了,都认不出来了,果然人都会变老,明星也不例外

TVB的四小花
2026-04-18 17:35:52
为什么闲鱼很多卖家只支持自提?网友:等你碰上到手刀的就老实了

为什么闲鱼很多卖家只支持自提?网友:等你碰上到手刀的就老实了

另子维爱读史
2026-03-22 22:34:48
车辆卸沙现场,一男性尸体随沙料倾泻而出!事发一搅拌站

车辆卸沙现场,一男性尸体随沙料倾泻而出!事发一搅拌站

南方都市报
2026-04-18 17:47:39
燃气公司上门安检,根本不是查漏气!真正目的其实是这3个

燃气公司上门安检,根本不是查漏气!真正目的其实是这3个

李博世财经
2026-04-16 14:04:21
拉夫罗夫:莫斯科将把所有历史上的俄罗斯土地归还其合法家园

拉夫罗夫:莫斯科将把所有历史上的俄罗斯土地归还其合法家园

番茄说史聊
2026-02-22 14:07:52
王海再次“打假”胖东来!指其售卖“防切割手套”篡改日期,胖东来发布调查报告:不实!仍奖投诉顾客1万元,所有购买该产品顾客全额退款

王海再次“打假”胖东来!指其售卖“防切割手套”篡改日期,胖东来发布调查报告:不实!仍奖投诉顾客1万元,所有购买该产品顾客全额退款

大象新闻
2026-04-18 14:47:07
95分钟丢球+比分2-2,热刺遭绝平,连续15轮不败,深陷降级区

95分钟丢球+比分2-2,热刺遭绝平,连续15轮不败,深陷降级区

侧身凌空斩
2026-04-19 02:34:28
“富人才不会把女儿养这么胖”,家长晒女儿喝60元矿泉水,被群嘲

“富人才不会把女儿养这么胖”,家长晒女儿喝60元矿泉水,被群嘲

妍妍教育日记
2026-04-16 10:25:09
玉渊谭天:特殊时刻,两部反制新规全方位保护中国海外利益

玉渊谭天:特殊时刻,两部反制新规全方位保护中国海外利益

环球网资讯
2026-04-18 11:58:06
退休以后,提醒大家:尽量别让任何人知道你的状态,尤其这5件事

退休以后,提醒大家:尽量别让任何人知道你的状态,尤其这5件事

小谈食刻美食
2026-03-28 09:42:18
这剧情我见过好几次,西蒙斯进球脱衣庆祝后热刺被布莱顿绝平

这剧情我见过好几次,西蒙斯进球脱衣庆祝后热刺被布莱顿绝平

懂球帝
2026-04-19 02:39:25
杨幂baby旧照曝光!万万没想到,女明星私下里陪大佬吃饭都是素颜的

杨幂baby旧照曝光!万万没想到,女明星私下里陪大佬吃饭都是素颜的

八卦王者
2026-04-18 16:35:21
2026-04-19 03:39:00
Ping值焦虑
Ping值焦虑
有态度网友ytd
1483文章数 22关注度
往期回顾 全部

科技要闻

传Meta下月拟裁8000 大举清退人力为AI腾位

头条要闻

伊朗革命卫队向油轮开火 伊朗最高领袖发声

头条要闻

伊朗革命卫队向油轮开火 伊朗最高领袖发声

体育要闻

时隔25年重返英超!没有人再嘲笑他了

娱乐要闻

刘德华回应潘宏彬去世,拒谈丧礼细节

财经要闻

"影子万科"2.0:管理层如何吸血万物云?

汽车要闻

奇瑞威麟R08 PRO正式上市 售价14.48万元起

态度原创

房产
教育
本地
艺术
军事航空

房产要闻

官宣签约最强城更!海口楼市,突然杀入神秘房企!

教育要闻

亲爱的老己,欢迎在二十六岁,迈入人生的夏季|中山大学国际新闻420分经验贴

本地新闻

12吨巧克力有难,全网化身超级侦探添乱

艺术要闻

波兰美女奥拉·卡兹马雷克,绝美风情让人惊艳!

军事要闻

解放军护卫舰与外舰缠斗20小时 细节披露

无障碍浏览 进入关怀版