目录
简介
Spring Cloud是一系列框架的有序集合。它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册、配置中心、消息总线、负载均衡、断路器、数据监控等,都可以用Spring Boot的开发风格做到一键启动和部署。
图解
核心组件
API网关服务:Spring Cloud Zuul
- Zuul功能:认证、压力测试、金丝雀测试、动态路由、负载削减、安全、静态响应处理、主动/主动交换管理
- 配置
zuul:
ignored-services: '*' # 忽略配置
routes:
zxjx-crm: /zxjx/crm/**
声明式服务调用:Spring Cloud Feign
-
可以理解为用户服务之间的调用,不经过api路由
-
使用@EnableFeignClients(basePackages = {“cn.xxt.zxjx.crm”}),开启Feign
-
注
- 扫描添加的微服务包
- 被调用的API接口中参数必须使用
@RequestParam
中的value
属性,指定参数名
分布式配置中心:Spring Cloud Config
- 实现了对服务端和客户端中环境变量和属性配置的抽象映射。由于Spring Cloud Config实现的配置中心默认采用Git来存储配置信息,所以天然就支持对服务应用配置信息的版本管理
服务治理:Spring Cloud Eureka
客户端负载均衡:Spring Cloud Ribbon
服务容错保护:Spring Cloud Hystrix
消息总线:Spring Cloud Bus
消息驱动微服务:Spring Cloud Stream
分布式服务跟踪:Spring Cloud Sleuth
工程使用版本
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-dependencies</artifactId>
<version>Dalston.SR1</version>
<type>pom</type>
<scope>import</scope>
</dependency>