SpringCloud极简入门 (一) 微服务架构

作者:陈刚,叩丁狼高级讲师。原创文章,转载请注明出处。

一.单体应用

什么是单体应用?简而言之我们以前传统的应用就是单体应用,即所有的模块,组件等都在一个应用中进行开发,项目的部署也是把整个应用在一个容器中进行部署,并且一个应用享用一个数据库。在单体应用中我们通常把应用分为三个组成部分:数据库,业务层,表现层,这样的应用结构在项目初期业务较少的情况下没有任何问题,但是随着业务需求不断的增加要求单体应用中的业务逻辑,业务组件等日益扩张,应用将会变得越来越臃肿,往后的开发和维护就会变得特别麻烦,再加上越来越大访的问量,并发越来越高,面对海量的用户无论从应用性能还是从数据库方面都有吃不消的时候。所以单体应用在一定程度上也有它的瓶颈。

二.微服务架构

什么是微服务架构?简单说就是把我们传统的单体应用抽成一个个小型的服务,这些小型的服务本身也是一个个独立的应用,这些应用可以独立部署并运行,服务与服务之间通过 HTTP RESTful API进行通信,而每一个服务只需要专注某一块业务即可。例如一个简单电商系统,我可以把用户模块单独抽成一个服务,把订单模块抽成一个服务,把商品模块单独抽成一个服务等,这样一来我每一个服务应用责任分明,并且每一个服务可以连接自己独立的数据库,这样一来无论从编码,维护上都显得特别方便。
图例:

img1.png

三.SpringCloud简介

SpringCloud是一个实现微服务架构的工具集,他是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包。

简而言之SpringCloud很好的解决了微服务实施问题,而SpringCloud是基于SpringBoot的快速开发风格,还没学习过SpringBoot的同学可以上https://ke.qq.com/course/265762进行学习。


猜你喜欢

转载自blog.csdn.net/wolfcode_cn/article/details/80654619