Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。Spring并没有重复制造轮子,它只是将目前各家公司开发的比较成熟、经得起实际考验的服务框架组合起来,通过Spring Boot风格进行再封装屏蔽掉了复杂的配置和实现原理,最终给开发者留出了一套简单易懂、易部署和易维护的分布式系统开发工具包
以下为Spring Cloud的核心功能:
-
分布式/版本化配置
-
服务注册和发现
-
路由
-
服务和服务之间的调用
-
负载均衡
-
断路器
-
分布式消息传递
我们再来看一张图:
通过这张图,我们来了解一下各组件配置使用运行流程:
-
1、请求统一通过API网关(Zuul)来访问内部服务.
-
2、网关接收到请求后,从注册中心(Eureka)获取可用服务
-
3、由Ribbon进行均衡负载后,分发到后端具体实例
-
4、微服务之间通过Feign进行通信处理业务
-
5、Hystrix负责处理服务超时熔断
-
6、Turbine监控服务间的调用和熔断相关指标