(1)概念:

Spring Cloud是实现微服务架构的一系列框架的有机集合。是在Spring Boot基础上构建的,用于简化分布式系统构建的工具集,是拥有众多子项目的项目集合,利用Spring Boot的开发便利性,巧妙地简化了分布式系统基础设施(服务注册与发现、熔断机制、网关路由、配置中心、消息总线、负载均衡、链路追踪等)的开发。

(2)整体架构:

  • 服务注册与发现组件:Eureka,Zookeeper,Consul,Nacos等,其中Eureka基于REST风格的。
  • 服务调用组件:Hystrix(熔断降级,在出现依赖服务失效的情况下,通过隔离系统依赖服务 的方式,防止服务级联失败,同时提供失败回滚机制,使系统能够更快地从异常中恢复),Ribbon(客户端负载均衡,用于提供客户端的软件负载均衡算法,提供了一系列完善的配置项:连接超时、重试等),OpenFeign(优雅的封装Ribbon,是一个声明式RESTful网络请求客户端,它使编写Web服务客户端变得更加方便和快捷)。
  • 网关:路由和过滤。Zuul,Gateway。
  • 配置中心:提供了配置集中管理,动态刷新配置的功能;配置通过Git或者其他方式来存储
  • 消息组件:Spring Cloud Stream(对分布式消息进行抽象,包括发布订阅、分组消费等功能,实现了微服务之间的异步通信)和Spring Cloud Bus(主要提供服务间的事件通信,如刷新配置)。
  • 安全控制组件:Spring Cloud Security 基于OAuth2.0开放网络安全标准,提供了单点登录、资源授权和令牌管理等功能。
  • 链路追踪组件:Spring Cloud Sleuth(收集调用链路上的数据),Zipkin(对Sleuth收集的信息,进行存储,统计,展示)。
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐