分布式和集群 ----springcloud

什么是单体架构系统?
所谓的单体架构就是所有功能,都放在一个应用里。
比如后面要讲的一个单体产品服务应用,提供数据和视图都在一个springboot里。

单体架构系统有其好处,如便于开发,测试,部署也很方便,直接打成一个 jar 或者 war, 就什么都好了。

不过单体架构也有其弊端,最主要体现在高访问,高并发的上限是固定的。 比如一个单体架构,能够承受 1000次访问/秒。 但是访问量达到 2000次/秒的时候,就会非常卡顿,严重影响业务,并且仅仅依靠单体架构本身,很难突破这个瓶颈了。
简而言之,就是所有鸡蛋放一个篮子里,要是多个人取鸡蛋的话,就非常慢,还可能摔了篮子,打碎鸡蛋。
什么是分布式和集群?
既然单体架构会有性能上的瓶颈,那么总要解决呀。 解决办法通常就是采用分布式和集群来做。
简单来说,就是把鸡蛋放到不同的篮子里

要说springcloud 分布式之前,先引入微服务概念。
微服务简单说,一个 springboot 就是一个 微服务,并且这个 springboot 做的事情很单纯。 比如一个项目中,有提供数据和查询数据两个功能,那么就可以拆成两个微服务,分别是 数据微服务,和视图微服务,其实就是俩 springboot, 只是各自做的事情都更单纯~
在这里插入图片描述

那既然我们把项目拆分成了两个微服务,也就是两个spring boot 那我们如何管理这个微服务,以及这两个微服务之间如何通信的问题?
所以就要引入一个 微服务注册中心概念,这个微服务注册中心在 springcloud 里就叫做 eureka server, 通过它就可以把微服务注册起来,以供将来调用。
原来是在一个 springboot里就完成的事情,现在分布在多个 springboot里做,这就是初步具备 分布式雏形了。
在业务逻辑上, 视图微服务 需要 数据微服务 的数据,所以就存在一个微服务访问另一个微服务的需要。而这俩微服务已经被注册中心管理起来了,所以 视图微服务 就可以通过 注册中心定位并访问 数据微服务了。就相当于eureka是一个调度中心,用来管理这两个微服务之间的协调通信。

那么分布式有什么好处呢?
1 . 如果我要更新数据微服务,视图微服务是不受影响的
2 . 可以让不同的团队开发不同的微服务,他们之间只要约定好接口,彼此之间是低耦合的。
3 . 如果视图微服务挂了,数据微服务依然可以继续使用

什么是集群?
原来数据微服务只有这一个springboot, 现在做同样数据微服务的,有两个 springboot, 他们提供的功能一模一样,只是端口不一样,这样就形成了集群。
在这里插入图片描述
集群的好处
1 . 比起一个 springboot, 两个springboot 可以分别部署在两个不同的机器上,那么理论上来说,能够承受的负载就是 x 2. 这样系统就具备通过横向扩展而提高性能的机制。
2 . 如果 8001 挂了,还有 8002 继续提供微服务,这就叫做高可用 。

以上是很简单的分布式结构,围绕这个结构,我们有时候还需要做如下事情:

  1. 哪些微服务是如何彼此调用的? sleuth 服务链路追踪
  2. 如何在微服务间共享配置信息?配置服务 Config Server
  3. 如何让配置信息在多个微服务之间自动刷新? RabbitMQ 总线 Bus
  4. 如果数据微服务集群都不能使用了, 视图微服务如何去处理? 断路器 Hystrix
  5. 视图微服务的断路器什么时候开启了?什么时候关闭了? 断路器监控 Hystrix Dashboard
  6. 如果视图微服务本身是个集群,那么如何进行对他们进行聚合监控? 断路器聚合监控 Turbine Hystrix Dashboard
  7. 如何不暴露微服务名称,并提供服务? Zuul 网关

后续将会更新关于spring boot的其他内容

1.spring cloud-------注册中心
2.springcloud----注册数据微服务
3.springcloud-视图微服务-Ribbon
4.springcloud-视图微服务-Feign

					*帅气的远远啊*
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值