微服务的由来及其定义

单体架构

所谓单体架构就是所有的功能模块都集成在一个项目中,就是只有这一个项目,所有的开发人员都是在这个项目中开发各自的模块。

单体架构是早起的架构系统,适用于开发周期短,小型的项目。

它的缺点是,当项目的功能模块越来越多时,不易于继续开发和维护。而且一个项目中各个模块的访问量是不一样的,比如在电商系统中,当有促销活动时,订单模块的访问量会远大于登录等其它模块,这样把所有模块都集群部署就不太合适了。

垂直架构

垂直架构,就是把一个项目拆分为几个项目,每一个项目集成不同的模块。比如一个项目集成订单管理、商品管理等模块,另一个项目集成客户管理等模块,还有一个项目集成物流模块。

这样做,虽然把一整个项目拆分了,但是各个项目之间会存在相同的功能模块,出现数据冗余。

SOA架构

SOA架构主要分为系统层,服务层,数据层等。具备了服务的概念,比如把电子商城这个子项目的登录,用户管理这个子项目的登录,物流系统这个子项目的登录抽取出来,做成一个单一的登录服务系统。

SOA架构的核心,是资源的重复利用。组件的服务化。

微服务架构

这里写图片描述

将系统服务层完全独立出来,并将服务层抽取为一个一个的微服务。遵循单一原则。微服务之间采用RESTful等轻量协议传输。

其特点是拆分粒度更细,利于重复利用各个资源。迭代周期短。

微服务定义

将一个独立的系统拆分成若干个小的服务,这些小的服务独立部署,服务与服务之间采用http轻量协议传输数据,每个服务独立性强。这样的设计实现了单个服务的高内聚,服务于服务之间低耦合的效果,我们把这些一个一个小的服务成为微服务。

参考资料:传智播客相关公开课

猜你喜欢

转载自blog.csdn.net/Jianyiwei123456/article/details/80033656