究竟什么是架构设计?一篇文章和你说清

见字如面,我是军哥!

在架构师面试过程中,架构设计是一个必不可少的环节。通常面试官会陈述系统的功能需求与性能需求,面试者要提出系统架构设计方案,并与面试官讨论方案里的设计折衷,方案选型与各个方案的优缺点。

那究竟什么是架构设计,architecture design 呢?

架构设计通常是指,为了满足特定的需求,我们定义系统组件,以及组件之间相互作用关系的过程。

比如说,你要满足一个个人主页的需求,系统架构只需要一个web-server,背后丢一个静态页就可以了。而如果你要满足一个十万人同时登陆的需求,系统架构就需要反向代理,web-server,service,DB,cache等诸多组件。

画外音:任何脱离业务需求的架构设计,都是耍流氓。

在软件工程中,架构设计是软件开发过程中的一个阶段,这个阶段侧重于顶层设计而不是细节设计。通常这个阶段需要设计整体的结构,组件,与组件关系。

总之,架构设计的目的是为了实现产品需求,业务需求,架构设计非常关注:

(1)整体结构;

(2)组件;

(3)组件之间的关联;

举几个案例。

案例1,业务需求:“我想做一个全网搜索引擎,不复杂,和百度类似就行,两个月能上线吗?”

ccb1d3b4a3adfe0c3fdc213ac6b58902.png

为了实现这个搜索引擎需求,整体的结构,组件,组件之间的关联,可能就是这样的。

案例2,业务需求:“我想做一个内容检索功能,不复杂,100亿数据,每秒10万查询而已,两个星期能上线吗?”

788f65dab621a8cff92ee829a23eeb7d.png

为了实现这个内容检索需求,整体的结构,组件,组件之间的关联,可能就是这样的。

案例3,业务需求:“检索的时效性,对用户体验来说很重要,在例子2的基础之上,必须检索出5分钟之前的新闻,1秒钟之前发布的帖子,不复杂吧?”

3963e984f569b6e5910b706e45a1acf1.png

为了实现这个时效性需求,整体的结构,组件,组件之间的关联,可能就是这样的。

以上,就是架构设计。

==全文完,觉得我说的还凑合的话点个赞或者在看吧!==

最后,我的直播形式有重大变化,想试试周末连麦的方式来跟大家互动给大家解决问题。

所以,你若有工作上或者职业上的困惑,或想搞个副业无从下手,或快35岁了还在一线当大头兵不知道如何破局的。

欢迎本周六晚上 21 点来直播间「语音连麦」,当然欢迎你带着你的其他个性问题来直播间提问,我知无不言,我们不见不散哈~

以往热文推荐:

最近几月面试了几百人,意外发现 4 个共性问题!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值