一、单体架构系统
在学习Springcloud 之前,我们先理解一下单体架构系统。 所谓的单体架构就是所有功能,都放在一个应用里。
比如我们比较熟悉的SpringBoot应用,提供数据和视图都在一个springboot里。
单体架构系统优点:便于开发,测试,部署也很方便,直接打成一个 jar 或者 war进行部署即可。
缺点:单体架构也有其弊端,最主要体现在高访问,高并发的上限是固定的。 比如一个单体架构,能够承受 1000次访问/秒。 但是访问量达到 2000次/秒的时候,就会非常卡顿,严重影响业务,并且仅仅依靠单体架构本身,很难突破这个瓶颈了。于是就有了分布式。
二、分布式和集群
分布式和集群这个就不是一两句话能够说的清楚的啦。。。。 直接丢一大堆概念给初识分布式的同学又会云里雾里,所以在这里我们会先学习一个单体架构,然后对这个单体架构进行逐步改造,最后让其变成一个分布式和集群系统,通过参与这个过程,我们才能够感性地接触和认识到底什么是分布式和集群。
三、举例说明单体架构系统和分布式集群系统的区别
下面以请保姆为例来一起理解一下什么是分布式和集群
比如家里有老人行动不便,而自己又需要上班不方便照顾老人,这时大家应该都会找一个保姆。
单体架构:
这位保姆从买菜,到做饭,洗衣,刷碗,拖地,洗澡,做健身操,等等,全部都做。 这种叫做单体架构。
集群:
什么都做,一个保姆怎么够呢,肯定忙不过来呀,那就请两个保姆吧,这叫做集群。
高可用概念:
有一个保姆过生日,想请假一天。如果只有一个保姆,她走了,就叫做服务中断了。 但是因为做了集群,有两个保姆,走了一个,另一个还是能用,虽然相比较吃力一些,但是毕竟还是能用的,这个现象叫做高可用。
分布式:
一个保姆她忙不过来,两个保姆一块工作又重叠了许多,怎么办呢? 那就让一个保姆来买菜、做饭、刷碗,拖地,另一位保姆负责伺候老人的生活起居。 这样服务本来仅仅是由一个保姆提供的提供的,变成了和老人相关的由一个保姆负责,饮食、卫生方面由另外一个保姆负责。 这就叫做分布式了。
低耦合概念:
做老人服务的保姆请假了,不影响做饭的保姆。 这叫做低耦合。
四、SpringCloud
SpringCloud 就是一套工具,帮助大家很容易地搭建出这么一个 集群和分布式的架子出来。
接下来的时间中,我们会从一个简单的单站系统开始,然后一步一步地把它改造成分布式+集群的系统。 在改造的过程中,就会逐步引入服务注册中心 Eureka, 客户端Ribbon,Feigh, 断路保护 Hystrix, 配置服务,消息总线等等概念和用法。
大家按部就班地跟着走一遍,差不多SpringCloud 的初步运用就能掌握了。
大体上把整个SpringCloud学习的博客分为了以下几部分:
1、SpringCloud单体架构例子
2、SpringCloud分布式和集群
3、SpringCloud父子项目
4、SpringCloud服务注册中心
5、SpringCloud注册数据微服务
6、SpringCloud视图微服务---Ribbon
7、SpringCloud视图微服务---Feign
8、SpringCloud服务链路追踪
9、SpringCloud配置服务器
10、SpringCloud配置客户端
11、SpringCloud配置客户端
12、SpringCloud消息总线Bus
13、SpringCloud断路器Hystrix
14、SpringCloud断路器监控
15、SpringCloud断路器聚合监控
16、SpringCloud网关 Zuul
17、SpringCloud端口号总结
下面我们正式开始SpringCloud的学习!大家加油