新闻详情

新闻详情

首页 / 资讯中心 / 详情

从0开始学架构-04:复杂度来源高性能

发布时间:2026/9/30 20:27:20来源:尧图网络
从0开始学架构-04:复杂度来源高性能
周四,我为你讲了架构设计的主要目的是为了解决软件系统复杂度带来的问题。那么从今天开始,我将为你深入分析复杂度的6个来源,先来聊聊复杂度的来源之一高性能。对性能孜孜不倦的追求是整个人类技术不断发展的根本驱动力。例如计算机,从电子管计算机到晶体管计算机再到集成电路计算机,运算性能从每秒几次提升到每秒几亿次。但伴随性能越来越高,相应的方法和系统复杂度也是越来越高。现代的计算机CPU集成了几亿颗晶体管,逻辑复杂度和制造复杂度相比最初的晶体管计算机,根本不可同日而语。软件系统也存在同样的现象。最近几十年软件系统性能飞速发展,从最初的计算机只能进行简单的科学计算,到现在Google能够支撑每秒几万次的搜索。与此同时,软件系统规模也从单台计算机扩展到上万台计算机;从最初的单用户单工的字符界面Dos操作系统,到现在的多用户多工的Windows 10图形操作系统。当然,技术发展带来了性能上的提升,不一定带来复杂度的提升。例如,硬件存储从纸带→磁带→磁盘→SSD,并没有显著带来系统复杂度的增加。因为新技术会逐步淘汰旧技术,这种情况下我们直接用新技术即可,不用担心系统复杂度会随之提升。只有那些并不是用来取代旧技术,而是开辟了一个全新领域的技术,才会给软件系统带来复杂度,因为软件系统在设计的时候就需要在这些技术之间进行判断选择或者组合。就像汽车的发明无法取代火车,飞机的出现也并不能完全取代火车,所以我们在出行的时候,需要考虑选择汽车、火车还是飞机,这个选择的过程就比较复杂了,要考虑价格、时间、速度、舒适度等各种因素。软件系统中高性能带来的复杂度主要体现在两方面,一方面是单台计算机内部为了高性能带来的复杂度;另一方面是多台计算机集群为了高性能带来的复杂度。单机复杂度计算机内部复杂度最关键的地方就是操作系统。计算机性能的发展本质上是由硬件发展驱动的,尤其是CPU的性能发展。著名的“摩尔定律”表明了CPU的处理能力每隔18个月就翻一番;而将硬件性能充分发挥出来的关键就是操作系统,所以操作系统本身其实也是跟随硬件的发展而发展的,操作系统是软件系统的运行环境,操作系统的复杂度直接决定了软件系统的复杂度。操作系统和性能最相关的就是进程和线程。最早的计算机其实是没有操作系统的,只有输入、计算和输出功能,用户输入一个指令,计算机完成操作,大部分时候计算机都在等待用户输入指令,这样的处理性能很显然是很低效的,因为人的输入速度是远远比不上计算机的运算速度的。为了解决手工操作带来的低效,批处理操作系统应运而生。批处理简单来说就是先把要执行的指令预先写下来(写到纸带、磁带、磁盘等),形成一个指令清单,这个指令清单就是我们常说的“任务”,然后将任务交给计算机去执行,批处理操作系统负责读取“任务
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

黑通道协议可自定义吗?解析工业功能安全的配置边界 2026/9/30 21:02:00

黑通道协议可自定义吗?解析工业功能安全的配置边界

1. 黑通道协议不是“黑盒”,而是工业安全通信的底层契约“可以自定义黑通道协议吗?”——这个问题在自动化工程师群里一抛出来,往往立刻引发两极反应:有人秒回“绝对不行,这是安全红线”,也有人困惑&#x…

阅读更多 →
Agent Skill: react-best-practices 实战大纲:把 React 最佳实践封装成可复用技能 2026/9/30 21:02:00

Agent Skill: react-best-practices 实战大纲:把 React 最佳实践封装成可复用技能

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
2026年开源Agent工具栈:用TaoToken统一Key打通编排、记忆与MCP配置 2026/9/30 21:01:59

2026年开源Agent工具栈:用TaoToken统一Key打通编排、记忆与MCP配置

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
深圳芯片封装建厂手记:900平车间,先算水电账再画动线 2026/9/30 21:01:53

深圳芯片封装建厂手记:900平车间,先算水电账再画动线

深圳芯片封装产能这两年往宝安、龙华、光明几个园区集中,但十个项目里有六七个是拿到订单后才仓促找厂房。搬进去才发现变压器容量不够、货梯进不了设备木箱、空压机一开打线精度就漂——这些学费,大多交在布局规划这一步。这篇文章把几个园区产线落地攒…

阅读更多 →
VSCode配置Python环境:用TaoToken统一Key打通AI补全与调试链路 2026/9/30 21:01:46

VSCode配置Python环境:用TaoToken统一Key打通AI补全与调试链路

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →
YouTube 视频下载方法汇总:自有与授权内容如何保存?实操工具对比 2026/9/30 21:01:39

YouTube 视频下载方法汇总:自有与授权内容如何保存?实操工具对比

很多人搜索“YouTube 视频下载方法”,真正遇到的问题却不只是找一个下载按钮: 已经在应用里离线保存,电脑文件夹中却找不到 MP4;选择了 1080P,保存后只有画面,没有声音;视频拿到了,…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞 ✉