「SpringCloud」相关基础概念

和站长学SpringCloud👻👻👻

分布式和集群

1. 分布式和集群的概念

以带小孩为例来一起理解一下什么是分布式和集群。。。

单体架构

  • 家里生小宝宝啦,由于自己没有照顾小宝宝的经验,所以请了位经验丰富的月嫂。
  • 这位月嫂从买菜,到做饭,洗衣,拖地,喂奶,哄睡,洗澡,换纸尿裤,擦屁股,做排气操,夜间陪护,给奶妈做月子餐等等,全部都做。 这种叫做单体架构。

集群

  • 什么都做,一个月嫂怎么够呢,肯定忙不过来呀,那就请两个月嫂吧,这叫做集群。

高可用概念

  • 有一个月嫂过生日,想请假回去和亲戚打一天麻将。如果只有一个月嫂,她走了,就叫做服务中断了。
  • 但是因为做了集群,有两个月嫂,走了一个,另一个还是能用,虽然相比较吃力一些,但是毕竟还是能用的,这个现象叫做高可用。

分布式

  • 一个月嫂,一个月的费用基本上都要1万多,还有房贷,还有车贷,生活费用还高,实在是请不起两位啊,那就还是请一位吧。
  • 可是事情那么多,她实在忙不过来,怎么办呢? 那就把爷爷请过来买菜,把奶奶请过来做饭。
  • 这样服务本来仅仅是由月嫂一人提供的,变成了和宝宝相关的由月嫂负责,采购由爷爷负责,餐饮由奶奶负责。 这就叫做分布式了。

低耦合概念

  • 做宝宝服务的月嫂去打麻将了,不影响做饭的奶奶。 做采购的爷爷去喝酒了,也不影响月嫂的宝宝服务,这叫做低耦合。

高内聚概念

  • 和宝宝相关的事情都是月嫂在做,月嫂兑奶方式快慢,只会影响自己,对爷爷和奶奶的服务没影响. 这叫做高内聚。

集群+分布式

  • 奶奶一个人做饭,做久了也烦啊,也累啊,也想打麻将呀。 那么就把姥姥也请过来吧。
  • 这样做饭这个服务,就由奶奶和姥姥这个集群来承担啦。她们俩,谁想去汗蒸了,都有另一位继续提供做饭服务。 这就叫做集群+分布式。

2. 单体转换分布式

  • 基于分布式这样的概念,我们就可以把单体项目转换成分布式的结构。
  • 如图所示以前的一个单独应用,现在由多个微服务组成了。

3. 加上集群

  • 如图所示,每个微服务,又是由多个集群组成。 如 指数代码服务,由3个微服务的集群组成,他们分别使用 8011,8012,8013 端口来区分。
  • 如果8011这个微服务,因为某些原因无法使用了,8012和8013既然可以继续使用,这样就达到了高可用的效果。

什么是微服务?

  • 微服务架构是一种将单应用程序作为一套小型服务开发的方法,每种应用程序都在其自己的进程中运行,并与轻量级机制(通常是HTTP资源的API)进行通信。这些服务是围绕业务功能构建的,可以通过全自动部署机制进行独立部署。这些服务的集中化管理已经是最少的,它们可以用不同的编程语言编写,并使用不同的数据存储技术。

  • 说人话: 一个微服务,就是一个 springboot. 没了。

什么是注册中心

  • 所谓的注册中心,其实就是微服务总管。
  • 利用这个注册中心,它可以把所有的微服务都管理起来,统一调配他们彼此之间的访问。
  • 这个是注册中心服务器运行起来之后,本项目会管理的各种微服务一览。
posted @ 2020-03-11 11:26  antonGo  阅读(174)  评论(0)    收藏  举报