在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
从软件架构的整个演进过程来看,软件架构的发展经历了单体架构、垂直架构、SOA架构和微服务架构,下面我们分别了解一下这四个架构,内容包括各个架构的说明、优点和缺点,赶紧来一起看看总结和归纳吧~

1、单体架构

(1)架构说明:全部功能集中在一个项目内(All in one)。
(2)架构优点:架构简单,前期开发成本低、开发周期短,适合小型项目。
(3)架构缺点:全部功能集成在一个工程中,对于大型项目不易开发、扩展和维护;技术栈受限,只能使用一种语言开发;系统性能扩展只能通过扩展集群节点,成本高。
2、垂直架构

(1)架构说明:按照业务进行切割,形成小的单体项目。
(2)架构优点:技术栈可扩展(不同的系统可以用不同的编程语言编写)。
(3)架构缺点:功能集中在一个项目中,不利于开发、扩展、维护;系统扩张只能通过集群的方式;项目之间功能冗余、数据冗余、耦合性强。
3、SOA架构

(1)架构说明:将重复功能或模块抽取成组件的形式,对外提供服务,在项目与服务之间使用ESB(企业服务总线)的形式作为通信的桥梁。
(2)架构优点:重复功能或模块抽取为服务,提高开发效率;可重用性高;可维护性高。
(3)架构缺点:各系统之间业务不同,很难确认功能或模块是重复的;抽取服务的粒度大;系统和服务之间耦合度高。
4、微服务架构

(1)架构说明:将系统服务层完全独立出来,抽取为一个一个的微服务。抽取的粒度更细,遵循单一原则,采用轻量级框架协议传输。
(2)架构优点:服务拆分粒度更细,有利于提高开发效率;可以针对不同服务制定对应的优化方案;适用于互联网时代,产品迭代周期更短。
(3)架构缺点:粒度太细导致服务太多,维护成本高;分布式系统开发的技术成本高,对团队的挑战大。
以上就是软件架构的发展演进过程的全部总结,大家都了解了吗?如果与软件架构还有更深入的学习兴趣,可以
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
2019年8月计算机语言排行 Java语言排名第一
2019年8月计算机语言排行,现在只有Java与C稳立未倒。而Python逐渐和C++拉开了差距,8月是以3.03%的涨幅达到10.02%坐稳第三,并不断向C语言靠拢。对于曾经不少人期望第四名的C++能重回第三,但计算机语言不断迭代的TIOBE排行榜中排名下降。
14878
2019-08-14 17:02:16
IT行业的发展前景好不好?有哪些发展趋势?
IT行业的发展前景好不好?有哪些发展趋势?随着近些年来,中国互联网和通信技术的提升速度不断加快,IT市场的需求也随之不断增大。同时,IT工作也将变得更加具有挑战性,企业对IT技术人才的需要主要集中在中高级的IT工程师上。因此IT行业的发展前景不言而喻,下面我们来具体看一看未来IT行业的发展趋势。
10049
2020-02-10 13:54:55
转行学IT编程好找工作吗?
众所周知,IT行业工资高就业前景好,但是转行学IT编程好找工作吗?首先这个行业的就业前景是毋庸置疑的,关键看大家有没有学习的决心和毅力。而且,选择一个靠谱的培训机构也十分重要。一般来讲,如果你真的在一家靠谱的IT培训机构好好学习,第一份工作可能薪资会低一些,但是积累了一年的工作经验之后,薪资基本都可以实现翻倍,找工作自然不用愁!
6118
2020-08-13 18:21:16
计算机编程中多任务的处理方式
今天,我们要来分享的是计算机编程中多任务的处理方式。我们都知道,计算机中的任务执行是由CPU进行的,它以强大的计算能力极其任务处理能力,进行着大量的多任务的处理。简单来讲,计算机中的多任务处理有两种执行方式:并行和并发。下面我们来深入理解一下这个两大多任务的处理方式。
7575
2020-08-18 17:58:30
扎心!程序员手疼7年查出骨肿瘤,满满骨头渣!
在杭州工作的黄先生是一名从事IT行业的程序员。早在7年前,他就发现自己的左手会莫名其妙地酸痛。以为工作中常有的“键盘手”症状,也就没怎么在意。近期,黄先生左手手指完全不能动了,这才到骨科就诊。
5370
2021-08-23 17:03:55
