知识卡片
"技术没突破":分布式系统被预言了30年却没能取代单机系统的真正原因
内容
早在上世纪80年代,”分布式系统将是未来”这个判断就已经深入人心——Sun公司提出过”网络就是计算机”这样的响亮口号,无限扩展、按需伸缩、永不宕机,这些愿景听起来无比诱人,几乎所有人都认为单机系统很快就会被淘汰。但从上世纪80年代到21世纪前几年,等了30年,单机系统不仅没有寿终正寝,反而活得越来越好——原因很简单:”技术没突破”:如果一个分布式系统真的能做到和单机系统一样方便使用、既能扩展又保持高性能,这个世界上早就不会再有单机系统了。这个判断背后还有另一层同样重要的事实:从80年代到21世纪初的这段时间里,大部分企业系统(图书馆管理系统、客户关系管理系统这类)根本不需要很高的并发量,只要容易操作就足够了,而单机的关系数据库系统恰恰是最容易操作的方案——直到云计算和互联网时代真正到来,服务对象从几千人一下子跃升到十几亿人、数据量呈指数级增长、且完全无法准确预估未来的用户规模,”不能扩展就意味着业务会挂”这个真实的压力才第一次超过了”分布式系统开发难度更高”这个代价,天平才真正倒向了分布式系统这一边。这个案例给出了一条对”技术预言”保持理性判断的重要提醒:一项技术的美好愿景被广泛认同、被反复预言”即将取代现有方案”,和它真正具备落地取代现有方案的能力,是完全不同的两回事,中间隔着的正是”愿景本身有没有对应的技术突破去支撑”这道门槛;同时,即使技术突破真的出现了,一项新技术是否会被真正大规模采用,也还取决于原有方案是否已经真的不够用了(这里是单机系统的容量和性能是否已经真正撑不住真实业务需求)——评估一项技术预言是否真的会很快兑现,应当同时审视这两个条件是否都已经成立,而不是只看这个愿景本身听起来有多美好、多合理。
参考来源
- 位置:《高可用架构(第1卷)》第6章《大数据与数据库》"6.7 从NoSQL历史看未来"节,"6.7.4 2000年:No SQL"(源文件:_epub-src/OEBPS/Text/Chapter6_7_5.xhtml)
- 结论依据:原文说明"傻瓜都知道未来一定是分布式系统的天下……但是等啊等啊,30年过去了,却没等到自己寿终正寝的那一天,反而活得越来越好了,这是为什么?理由很简单,技术没突破。如果一个分布式系统做得跟单机系统一样方便,既能扩展,性能又好,那这世界上早就没有单机系统了",直接支撑本卡片结论。
- 原始内容:傻瓜都知道未来一定是分布式系统的天下,单机系统还有什么玩头?……但是等啊等啊,30年过去了,却没等到自己寿终正寝的那一天,反而活得越来越好了,这是为什么?理由很简单,技术没突破。