失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 单体架构 SOA架构 微服务架构的优点缺点以及区别联系

单体架构 SOA架构 微服务架构的优点缺点以及区别联系

时间:2023-12-13 16:11:12

相关推荐

单体架构 SOA架构 微服务架构的优点缺点以及区别联系

1、单体架构

优点:开发、调试、部署、横向扩展比较简单。

缺点:(1)维护困难,开发人员很难整体理解整个系统

(2)容错性差,因为整个系统是一个进程,如果系统报错,整个系统容易宕机

(3)资源不能进行合理利用,一个系统中不同的功能被被调用的频率不同,如果是单体应用的话,需要将整个应用水平扩展,造成了资源的浪费。

(4)不利于技术的扩展,传统的单体架构如果要更新某个技术,就需要重新开发整个系统

(5)难以扩展,不能按需扩展,而要扩展整个系统。代码库比较复杂,进行修改维护容易影响到别的功能

2.SOA架构

优点:(1)能够提高开发效率,可以将整个系统分为几个不同的子系统,不同团队负责不同的系统,从而提高开发效率。

(2)解耦,降低了系统之间的耦合

(3)易于扩展,业务逻辑改变时只需要修改单个服务,减少了对使用者的影响

缺点:抽取的粒度比较大。耦合度较高

3.微服务架构

什么是微服务?

微服务是通过将系统根据功能划分为细粒度的服务,每一个服务都是一个独立的应用,根据这种思想创建的软件服务实体就是微服务。

优点:(1)解耦,根据功能将系统分为不同的独立运行的服务,将原来的复杂的系统简单化,每个服务交付给不同的团队去负责,提高了开发效率。开发人员可以只关注自己的业务功能

(2)容错性高,将错误隔离在单个服务内。

(3)技术选型灵活,不同的服务可以根据自己的需求选择不同的技术。

(4)易于扩展,可以按需扩展服务,避免资源的浪费

(5)独立部署,每个服务独立部署,当其中一个服务有需求变更时,可以只编译部署单个应用,减少了对用户的影响

缺点:(1)开发人员需要面对分布式系统的复杂性。测试更加困难,需要保证服务之间的通信;需要团队之间的协调;当用例涉及到多个服务的时候,需要实现分布式事务管理。

(2)部署比较复杂

(3)增加内存开销,微服务系统用多个服务实例取代了传统垂直架构的单个服务实例。有多少服务实例,就会有多少在内存运行的开销。

4.微服务架构和SOA的区别

什么时候适合用微服务?

(1)并发量比较大的、用户比较多的

(2)将来预计扩展比较大的

(3)业务逻辑比较复杂的

如果觉得《单体架构 SOA架构 微服务架构的优点缺点以及区别联系》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。