1,fegin GET请求参数必须加@RequestParam; Post请求单一参数必须加@RequestParam 若参数是对象则加@RequestBody 多个参数则只能有一个是RequestBody其余为RequestParam;什么都不加默认会加@RequestBody,若为GET请求则会报错
2,SpringCloud 和SpringBoot版本关系
Cloud版本 | 支持的SpringBoot版本 | 不支持的版本 |
Angle | 1.2.x | |
Brixton | 1.3.x | |
Camden | 1.4.x | |
Dalston | 1.5.x | not expected 2.x - |
Edgware | 1.5.x | not expected 2.x - |
Finchley | 2.x | not expected 1.5.x - |
3,eureka心跳检测机制配置
注册中心eureka-server配置:
#关闭自我保护机制才能够实现心跳机制
eureka.server.enable-self-preservation=false
#设置自动清理时间间隔
eureka.server.eviction-interval-timer-in-ms=3000
各服务端eureka-client配置:
#服务过期时间 超过这个时间会被eureka踢出注册表
eureka.instance.lease-expiration-duration-in-seconds=20
#间隔发送心跳时间
eureka.instance.lease-renewal-interval-in-seconds=10
4,断路器仪表HystrixDashborad,查看服务之间调用情况,圆圈颜色代表健康度,大小代表饱和度吗,曲线代表趋势
Maven依赖:
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-hystrix-dashboard</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
</dependency>
启动类上必须加
@EnableCircuitBreaker//开启断路器功能 @EnableHystrixDashboard//开启断路器报表
5,Eureka双机部署则需要相互注册,当服务要注册到两个Eureka中则在DefaultZone后加上两个Eureka的Url就好了;
配置如下:
eureka1配置:
server:
port: 7000
eureka:
server:
enable-self-preservation: false
instance:
hostname: eureka1
client:
#单机部署需要加下面这两个
#是否注册到服务中心 若服务中心为双机则需要相互注册,需要打开,默认为打卡
#eureka.client.register-with-eureka=false
#是否拉取注册列表
#eureka.client.fetch-registry=false
serviceUrl:
defaultZone: http://eureka2:6999/eureka/
---·
eureka2配置:
server:
port: 6999
eureka:
server:
enable-self-preservation: false
instance:
hostname: eureka2
client:
serviceUrl:
defaultZone: http://eureka1:7000/eureka/
5,zull网管路由的配置路径 格式:/url/** 必须两个*