(通用之学习)spring cloud的体系介绍

一,初识spring cloud

spring最擅长的就是集成,把世界上最好的框架拿过来,集成到自己的项目中,spring cloud也是一样,它将当下非常流行的一些技术进行整合,实现了:
  • 配置管理
  • 服务发现
  • 智能路由
  • 负载均衡
  • 熔断器
  • 控制总线
  • 集群状态
主要涉及的组件包括:
  • Eureka:注册中心
  • Zuul:服务网关
  • Ribbon:负载均衡
  • Feign:服务调用
  • Hystrix:熔断器
spring cloud架构图:

架构图

二,“奇怪”的版本

Spring Cloud的版本命名比较特殊,因为它不是一个组件,而是许多组件的集合,它的命名是以A到Z为首字母的一 些单词组成(其实是伦敦地铁站的名字)
Spring Cloud 和Spring Boot版本对应关系表

在这里插入图片描述

三,Eureka注册中心

三个核心角色:
  1. 服务注册中心
  2. 服务提供者
  3. 服务消费者
服务注册中心:Eureka的服务端应用,提供服务注册和发现功能
服务提供者:提供服务的应用,可以是Spring Boot应用,也可以是其它任意技术实现,只要对外提供的是REST风格服务即可
服务消费者:消费应用从注册中心获取服务列表,从而得知每个服务方的信息,知道去哪里调用服务方

四,Ribbon负载均衡

Ribbon是Netflix发布的负载均衡器,有助于控制Http和Tcp客户端的行为。为Ribbon配置服务提供者地址列表后,基于某种负载均衡算法,自动地帮助服务消费者去请求。负载均衡算法有:轮询、随机等。

五,Hystix熔断器

Hystix是Netflix开源的一个延迟和容错库,用于隔离访问远程服务,防止出现级联失败。

六,Feign服务调用

Feign可以把Rest的请求进行隐藏,伪装成类似SpringMVC的Controller一样。你不用再自己拼接url,拼接参数等 等操作,一切都交给Feign去做。